Dotfiles V.1.2.0
This commit is contained in:
@@ -4,11 +4,6 @@
|
||||
# It's not necessary to copy all keys to your config.
|
||||
# If the key is missing in your config, "default-config.toml" will serve as a fallback
|
||||
|
||||
# You can use it to add commands that run after login to macOS user session.
|
||||
# 'start-at-login' needs to be 'true' for 'after-login-command' to work
|
||||
# Available commands: https://nikitabobko.github.io/AeroSpace/commands
|
||||
after-login-command = ['exec-and-forget sketchybar --update']
|
||||
|
||||
# You can use it to add commands that run after AeroSpace startup.
|
||||
# 'after-startup-command' is run after 'after-login-command'
|
||||
# Available commands : https://nikitabobko.github.io/AeroSpace/commands
|
||||
@@ -61,7 +56,7 @@ inner.horizontal = 10
|
||||
inner.vertical = 10
|
||||
outer.left = 10
|
||||
outer.bottom = 10
|
||||
outer.top = [{ monitor.dell = 50 }, { monitor.2 = 50 }, { monitor.3 = 50}, 10]
|
||||
outer.top = [{ monitor.built-in = 10 }, 50]
|
||||
outer.right = 10
|
||||
|
||||
# 'main' binding mode declaration
|
||||
@@ -80,57 +75,57 @@ outer.right = 10
|
||||
# keypadMinus, keypadMultiply, keypadPlus
|
||||
# - Arrows. left, down, up, right
|
||||
|
||||
# All possible modifiers: cmd, ctrl, ctrl, shift
|
||||
# All possible modifiers: cmd, alt, ctrl, shift
|
||||
|
||||
# All possible commands: https://nikitabobko.github.io/AeroSpace/commands
|
||||
|
||||
# You can uncomment this line to open up terminal with ctrl + enter shortcut
|
||||
# You can uncomment this line to open up terminal with alt + enter shortcut
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#exec-and-forget
|
||||
# ctrl-enter = 'exec-and-forget open -n /System/Applications/Utilities/Terminal.app'
|
||||
# alt-enter = 'exec-and-forget open -n /System/Applications/Utilities/Terminal.app'
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#layout
|
||||
ctrl-comma= 'layout tiles horizontal vertical'
|
||||
ctrl-period= 'layout accordion horizontal vertical'
|
||||
alt-comma= 'layout tiles horizontal vertical'
|
||||
alt-period= 'layout accordion horizontal vertical'
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#focus
|
||||
ctrl-q = 'focus left'
|
||||
ctrl-w = 'focus down'
|
||||
ctrl-e = 'focus up'
|
||||
ctrl-t = 'focus right'
|
||||
alt-h = 'focus left'
|
||||
alt-j = 'focus down'
|
||||
alt-k = 'focus up'
|
||||
alt-l = 'focus right'
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#move
|
||||
ctrl-shift-q = 'move left'
|
||||
ctrl-shift-w = 'move down'
|
||||
ctrl-shift-e = 'move up'
|
||||
ctrl-shift-t = 'move right'
|
||||
alt-shift-h = 'move left'
|
||||
alt-shift-j = 'move down'
|
||||
alt-shift-k = 'move up'
|
||||
alt-shift-l = 'move right'
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#workspace
|
||||
ctrl-1 = 'workspace '
|
||||
ctrl-2 = 'workspace '
|
||||
ctrl-3 = 'workspace '
|
||||
ctrl-4 = 'workspace '
|
||||
ctrl-5 = 'workspace '
|
||||
ctrl-6 = 'workspace '
|
||||
ctrl-7 = 'workspace '
|
||||
ctrl-8 = 'workspace '
|
||||
ctrl-9 = 'workspace '
|
||||
alt-1 = 'workspace '
|
||||
alt-2 = 'workspace '
|
||||
alt-3 = 'workspace '
|
||||
alt-4 = 'workspace '
|
||||
alt-5 = 'workspace '
|
||||
alt-6 = 'workspace '
|
||||
alt-7 = 'workspace '
|
||||
alt-8 = 'workspace '
|
||||
alt-9 = 'workspace '
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#move-node-to-workspace
|
||||
ctrl-shift-1 = 'move-node-to-workspace '
|
||||
ctrl-shift-2 = 'move-node-to-workspace '
|
||||
ctrl-shift-3 = 'move-node-to-workspace '
|
||||
ctrl-shift-4 = 'move-node-to-workspace '
|
||||
ctrl-shift-5 = 'move-node-to-workspace '
|
||||
ctrl-shift-6 = 'move-node-to-workspace '
|
||||
ctrl-shift-7 = 'move-node-to-workspace '
|
||||
ctrl-shift-8 = 'move-node-to-workspace '
|
||||
ctrl-shift-9 = 'move-node-to-workspace '
|
||||
alt-shift-1 = 'move-node-to-workspace '
|
||||
alt-shift-2 = 'move-node-to-workspace '
|
||||
alt-shift-3 = 'move-node-to-workspace '
|
||||
alt-shift-4 = 'move-node-to-workspace '
|
||||
alt-shift-5 = 'move-node-to-workspace '
|
||||
alt-shift-6 = 'move-node-to-workspace '
|
||||
alt-shift-7 = 'move-node-to-workspace '
|
||||
alt-shift-8 = 'move-node-to-workspace '
|
||||
alt-shift-9 = 'move-node-to-workspace '
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#move-workspace-to-monitor
|
||||
ctrl-shift-tab = 'move-workspace-to-monitor --wrap-around next'
|
||||
alt-shift-tab = 'move-workspace-to-monitor --wrap-around next'
|
||||
|
||||
# See: https://nikitabobko.github.io/AeroSpace/commands#mode
|
||||
ctrl-shift-slash= 'mode service'
|
||||
alt-shift-slash= 'mode service'
|
||||
|
||||
# 'service' binding mode declaration.
|
||||
# See: https://nikitabobko.github.io/AeroSpace/guide#binding-modes
|
||||
@@ -141,10 +136,10 @@ r = ['flatten-workspace-tree', 'mode main'] # reset layout
|
||||
f = ['layout floating tiling', 'mode main'] # Toggle between floating and tiling layout
|
||||
backspace = ['close-all-windows-but-current', 'mode main']
|
||||
|
||||
ctrl-shift-s = ['join-with left', 'mode main']
|
||||
ctrl-shift-d = ['join-with down', 'mode main']
|
||||
ctrl-shift-f = ['join-with up', 'mode main']
|
||||
ctrl-shift-g = ['join-with right', 'mode main']
|
||||
alt-shift-s = ['join-with left', 'mode main']
|
||||
alt-shift-d = ['join-with down', 'mode main']
|
||||
alt-shift-f = ['join-with up', 'mode main']
|
||||
alt-shift-g = ['join-with right', 'mode main']
|
||||
|
||||
# Window Rules
|
||||
|
||||
@@ -153,6 +148,11 @@ ctrl-shift-g = ['join-with right', 'mode main']
|
||||
if.window-title-regex-substring = 'Picture-in-Picture'
|
||||
run = 'layout floating'
|
||||
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'app.zen-browser.zen'
|
||||
if.window-title-regex-substring = 'Bitwarden'
|
||||
run = 'layout floating'
|
||||
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'app.zen-browser.zen'
|
||||
run = 'move-node-to-workspace '
|
||||
@@ -163,7 +163,7 @@ ctrl-shift-g = ['join-with right', 'mode main']
|
||||
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'info.sioyek.sioyek'
|
||||
run = 'move-node-to-workspace '
|
||||
run = 'move-node-to-workspace '
|
||||
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'NULL-APP-BUNDLE-ID'
|
||||
@@ -172,3 +172,7 @@ ctrl-shift-g = ['join-with right', 'mode main']
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.spotify.client'
|
||||
run = 'move-node-to-workspace '
|
||||
|
||||
[[on-window-detected]]
|
||||
if.app-id = 'com.hnc.Discord'
|
||||
run = 'move-node-to-workspace '
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
"logo": {
|
||||
"type": "file",
|
||||
"source": "/Users/jirayu/.config/fastfetch/logo.txt",
|
||||
"height": 25,
|
||||
},
|
||||
"modules": [
|
||||
"title",
|
||||
|
||||
7
.config/nvim/after/lsp/ltex.lua
Normal file
7
.config/nvim/after/lsp/ltex.lua
Normal file
@@ -0,0 +1,7 @@
|
||||
return {
|
||||
settings = {
|
||||
ltex = {
|
||||
checkFrequency = "save",
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -2,3 +2,4 @@ require("jirr02.core.options")
|
||||
require("jirr02.core.keymaps")
|
||||
require("jirr02.core.colorscheme")
|
||||
require("jirr02.lazy")
|
||||
require("jirr02.lsp")
|
||||
|
||||
@@ -1,53 +1,49 @@
|
||||
{
|
||||
"LuaSnip": { "branch": "master", "commit": "5271933f7cea9f6b1c7de953379469010ed4553a" },
|
||||
"alpha-nvim": { "branch": "main", "commit": "a35468cd72645dbd52c0624ceead5f301c566dff" },
|
||||
"auto-session": { "branch": "main", "commit": "00334ee24b9a05001ad50221c8daffbeedaa0842" },
|
||||
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
|
||||
"catppuccin": { "branch": "main", "commit": "fa42eb5e26819ef58884257d5ae95dd0552b9a66" },
|
||||
"LuaSnip": { "branch": "master", "commit": "3732756842a2f7e0e76a7b0487e9692072857277" },
|
||||
"alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" },
|
||||
"catppuccin": { "branch": "main", "commit": "ce8d176faa4643e026e597ae3c31db59b63cef09" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" },
|
||||
"cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" },
|
||||
"cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" },
|
||||
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
|
||||
"comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"conform.nvim": { "branch": "master", "commit": "0e93e0d12d2f7ebdea9e3e444dfaff0050cefbe6" },
|
||||
"csvview.nvim": { "branch": "main", "commit": "c44d9ed0664de67f3ac333fe83cb187ab241f82a" },
|
||||
"easytables.nvim": { "branch": "master", "commit": "ae57fdaad25a5f9ac2773ebdb8782c7bbc7d8932" },
|
||||
"follow-md-links.nvim": { "branch": "main", "commit": "ce8735a15dc3e5fc5bb052ec51b849c03e57df53" },
|
||||
"conform.nvim": { "branch": "master", "commit": "16d35530db66ca64f81cb1a13a42afe5962edf34" },
|
||||
"easytables.nvim": { "branch": "master", "commit": "4d7b4d98ab315b90156614e16e0a2b6dbbf2a108" },
|
||||
"follow-md-links.nvim": { "branch": "main", "commit": "728d96d268eef9666f0ee77a083e7e2f0b44f607" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "d0f90ef51d4be86b824b012ec52ed715b5622e51" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "5813e4878748805f1518cee7abb50fd7205a3a48" },
|
||||
"harpoon": { "branch": "harpoon2", "commit": "87b1a3506211538f460786c23f98ec63ad9af4e5" },
|
||||
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
"lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "a94fc68960665e54408fe37dcf573193c4ce82c9" },
|
||||
"markdown.nvim": { "branch": "main", "commit": "6f5a4c36d9383b2a916facaa63dcd573afa11ee8" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "bef29b653ba71d442816bf56286c2a686210be04" },
|
||||
"mason-tool-installer.nvim": { "branch": "main", "commit": "93a9ff9b34c91c0cb0f7de8d5f7e4abce51d8903" },
|
||||
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
|
||||
"neodev.nvim": { "branch": "main", "commit": "46aa467dca16cf3dfe27098042402066d2ae242d" },
|
||||
"noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
|
||||
"lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" },
|
||||
"lspkind.nvim": { "branch": "master", "commit": "3ddd1b4edefa425fda5a9f95a4f25578727c0bb3" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "c55bd8a8fb191e24176c206a7af1dd51ce7276a5" },
|
||||
"mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" },
|
||||
"mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" },
|
||||
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-FeMaco.lua": { "branch": "main", "commit": "96bbf843595dbe865838b3f2484b73557f34700c" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "4d74e75913832866aa7de35e4202463ddf6efd1b" },
|
||||
"nvim-bufdel": { "branch": "main", "commit": "523d58e94e7212fff3e05c247b962dc8f93bcfde" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
|
||||
"nvim-lint": { "branch": "master", "commit": "cc26ae6a620298bb3f33b0e0681f99a10ae57781" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "a182334ba933e58240c2c45e6ae2d9c7ae313e00" },
|
||||
"nvim-notify": { "branch": "master", "commit": "b5825cf9ee881dd8e43309c93374ed5b87b7a896" },
|
||||
"nvim-autopairs": { "branch": "master", "commit": "d9e44e54384e5b0f3536339c65484f2e41b528e3" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "d97d85e01339f01b842e6ec1502f639b080cb0fc" },
|
||||
"nvim-lint": { "branch": "master", "commit": "ae64d6466ed92b68353122d920e314ff2c8dd0a8" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "0044d0987ef7e624d04141d0f90d0481fd3c3663" },
|
||||
"nvim-notify": { "branch": "master", "commit": "8701bece920b38ea289b457f902e2ad184131a5d" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "0f051e9813a36481f48ca1f833897210dbcfffde" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "1fb58cca9aebbc4fd32b086cb413548ce132c127" },
|
||||
"oil.nvim": { "branch": "master", "commit": "08c2bce8b00fd780fb7999dbffdf7cd174e896fb" },
|
||||
"orgmode": { "branch": "master", "commit": "01e0924e38c7525fc0db22639abf39cf2dd3042d" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
||||
"smart-splits.nvim": { "branch": "master", "commit": "9af865e451e55a9835fae6862dd7c55396870ecb" },
|
||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" },
|
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "5ca4aaa6efdcc59be46b95a3e876300cfead05ef" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
|
||||
"oil.nvim": { "branch": "master", "commit": "cbcb3f997f6f261c577b943ec94e4ef55108dd95" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"smart-splits.nvim": { "branch": "master", "commit": "3ee3d37d82ee6b7813a8de2087e8020c0811b701" },
|
||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" },
|
||||
"telescope-live-grep-args.nvim": { "branch": "master", "commit": "b80ec2c70ec4f32571478b501218c8979fab5201" },
|
||||
"telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
|
||||
"template.nvim": { "branch": "main", "commit": "59955db23613985e031d340756d5c01aebd583a3" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
||||
"vim-fugitive": { "branch": "master", "commit": "4a745ea72fa93bb15dd077109afbb3d1809383f2" },
|
||||
"template.nvim": { "branch": "main", "commit": "308f6f8f0bf98cb7c71855ffa8a3019a5642d1cd" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
|
||||
"venv-selector.nvim": { "branch": "main", "commit": "58bae72c84b9f7f864c879ec1896e384296f9ffb" },
|
||||
"vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
|
||||
"vim-surround": { "branch": "master", "commit": "3d188ed2113431cf8dac77be61b842acb64433d9" },
|
||||
"vimtex": { "branch": "master", "commit": "22d9ae5265df069cb68310449a7218b836875c5b" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
|
||||
"vimtex": { "branch": "master", "commit": "6e1229e23c3bbe93487ef62458b1241a2d8ff6af" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
|
||||
}
|
||||
|
||||
@@ -43,7 +43,3 @@ opt.iskeyword:append("-")
|
||||
|
||||
-- concealer
|
||||
opt.conceallevel = 2
|
||||
|
||||
vim.cmd([[autocmd BufEnter *.pdf execute "!zathura '%'" | bdelete %]])
|
||||
vim.cmd([[autocmd BufEnter *.jpg execute "!open '%'" | bdelete %]])
|
||||
vim.cmd([[autocmd BufEnter *.png execute "!open '%'" | bdelete %]])
|
||||
|
||||
12
.config/nvim/lua/jirr02/lsp.lua
Normal file
12
.config/nvim/lua/jirr02/lsp.lua
Normal file
@@ -0,0 +1,12 @@
|
||||
local severity = vim.diagnostic.severity
|
||||
|
||||
vim.diagnostic.config({
|
||||
signs = {
|
||||
text = {
|
||||
[severity.ERROR] = " ",
|
||||
[severity.WARN] = " ",
|
||||
[severity.HINT] = " ",
|
||||
[severity.INFO] = " ",
|
||||
},
|
||||
},
|
||||
})
|
||||
@@ -1,17 +0,0 @@
|
||||
return {
|
||||
"rmagatti/auto-session",
|
||||
config = function()
|
||||
local auto_session = require("auto-session")
|
||||
local wk = require("which-key")
|
||||
|
||||
auto_session.setup({
|
||||
auto_restore_enabled = false,
|
||||
})
|
||||
|
||||
wk.add({
|
||||
{ "<leader>s", group = "session", icon = "" },
|
||||
{ "<leader>sr", "<cmd>SessionRestore<CR>", desc = "Restore session for cwd", icon = "" },
|
||||
{ "<leader>sr", "<cmd>SessionSave<CR>", desc = "Save Session", icon = "" },
|
||||
})
|
||||
end,
|
||||
}
|
||||
@@ -1,25 +0,0 @@
|
||||
return {
|
||||
"akinsho/bufferline.nvim",
|
||||
dependencies = {
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
"ojroques/nvim-bufdel",
|
||||
},
|
||||
config = function()
|
||||
local bufferline = require("bufferline")
|
||||
local wk = require("which-key")
|
||||
|
||||
bufferline.setup({
|
||||
options = {
|
||||
mode = "buffers",
|
||||
seperator_style = "slant",
|
||||
},
|
||||
})
|
||||
|
||||
wk.add({
|
||||
{ "<leader>b", group = "buffer", icon = "" },
|
||||
{ "<leader>bx", "<cmd>BufDel<CR>", desc = "Close Buffer", icon = "" },
|
||||
{ "<leader>bn", "<cmd>BufferLineCycleNext<CR>", desc = "Go to next buffer", icon = "" },
|
||||
{ "<leader>bp", "<cmd>BufferLineCyclePrev<CR>", desc = "Go to previous buffer", icon = "" },
|
||||
})
|
||||
end,
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
return {
|
||||
"hat0uma/csvview.nvim",
|
||||
config = function()
|
||||
require("csvview").setup({
|
||||
|
||||
view = {
|
||||
display_mode = "border",
|
||||
},
|
||||
})
|
||||
end,
|
||||
}
|
||||
@@ -1,7 +1,7 @@
|
||||
return {
|
||||
"AckslD/nvim-FeMaco.lua",
|
||||
lazy = true,
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
lazy = true,
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
config = function()
|
||||
local femaco = require("femaco")
|
||||
local wk = require("which-key")
|
||||
@@ -9,7 +9,7 @@ return {
|
||||
femaco.setup({})
|
||||
|
||||
wk.add({
|
||||
{"<leader>me", "<cmd>FeMaco<CR>", desc = "Edit code block in buffer", icon = ""},
|
||||
{ "<leader>me", "<cmd>FeMaco<CR>", desc = "Edit code block in buffer", icon = "" },
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
||||
@@ -8,7 +8,7 @@ return {
|
||||
conform.setup({
|
||||
formatters_by_ft = {
|
||||
markdown = { "prettier" },
|
||||
python = { "black" },
|
||||
python = { "ruff" },
|
||||
lua = { "stylua" },
|
||||
},
|
||||
format_on_save = {
|
||||
|
||||
63
.config/nvim/lua/jirr02/plugins/harpoon.lua
Normal file
63
.config/nvim/lua/jirr02/plugins/harpoon.lua
Normal file
@@ -0,0 +1,63 @@
|
||||
return {
|
||||
"ThePrimeagen/harpoon",
|
||||
branch = "harpoon2",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
config = function()
|
||||
local harpoon = require("harpoon")
|
||||
local wk = require("which-key")
|
||||
|
||||
harpoon:setup()
|
||||
|
||||
wk.add({
|
||||
{ "<leader>h", group = "harpoon", icon = "" },
|
||||
{
|
||||
"<leader>hi",
|
||||
function()
|
||||
harpoon.ui:toggle_quick_menu(harpoon:list())
|
||||
end,
|
||||
desc = "Open Harpoon",
|
||||
icon = "",
|
||||
},
|
||||
{
|
||||
"<leader>ha",
|
||||
function()
|
||||
harpoon:list():add()
|
||||
end,
|
||||
desc = "Add Buffer to Harpoon List",
|
||||
icon = "",
|
||||
},
|
||||
{
|
||||
"<leader>h1",
|
||||
function()
|
||||
harpoon:list():select(1)
|
||||
end,
|
||||
desc = "Select first Element in Harpoon List",
|
||||
icon = "",
|
||||
},
|
||||
{
|
||||
"<leader>h2",
|
||||
function()
|
||||
harpoon:list():select(2)
|
||||
end,
|
||||
desc = "Select second Element in Harpoon List",
|
||||
icon = "",
|
||||
},
|
||||
{
|
||||
"<leader>h3",
|
||||
function()
|
||||
harpoon:list():select(3)
|
||||
end,
|
||||
desc = "Select third Element in Harpoon List",
|
||||
icon = "",
|
||||
},
|
||||
{
|
||||
"<leader>h4",
|
||||
function()
|
||||
harpoon:list():select(4)
|
||||
end,
|
||||
desc = "Select fourth Element in Harpoon List",
|
||||
icon = "",
|
||||
},
|
||||
})
|
||||
end,
|
||||
}
|
||||
@@ -3,6 +3,6 @@ return {
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
main = "ibl",
|
||||
opts = {
|
||||
indent = { char = "|" },
|
||||
indent = { char = "┊" },
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,21 +1,23 @@
|
||||
return {
|
||||
"mfussenegger/nvim-lint",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
config = function ()
|
||||
local lint = require("lint")
|
||||
"mfussenegger/nvim-lint",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
config = function()
|
||||
local lint = require("lint")
|
||||
|
||||
lint.linters_by_ft = {
|
||||
python = { "pylint" },
|
||||
}
|
||||
lint.linters_by_ft = {
|
||||
python = { "ruff" },
|
||||
go = { "golangcilint" },
|
||||
latex = { "vale" },
|
||||
markdown = { "vale" },
|
||||
}
|
||||
|
||||
local lint_augroup = vim.api.nvim_create_augroup("lint", {clear = true})
|
||||
local lint_augroup = vim.api.nvim_create_augroup("lint", { clear = true })
|
||||
|
||||
vim.api.nvim_create_autocmd({ "BufEnter", "BufWritePost", "InsertLeave" }, {
|
||||
group = lint_augroup,
|
||||
callback = function ()
|
||||
lint.try_lint()
|
||||
end,
|
||||
})
|
||||
|
||||
end,
|
||||
vim.api.nvim_create_autocmd({ "BufEnter", "BufWritePost", "InsertLeave" }, {
|
||||
group = lint_augroup,
|
||||
callback = function()
|
||||
lint.try_lint()
|
||||
end,
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
||||
@@ -1,66 +1,22 @@
|
||||
return {
|
||||
"neovim/nvim-lspconfig",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
dependencies = {
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
"onsails/lspkind.nvim",
|
||||
{ "folke/neodev.nvim", opts = {} },
|
||||
{ "folke/lazydev.nvim", ft = "lua", opts = {} },
|
||||
},
|
||||
config = function()
|
||||
local lspconfig = require("lspconfig")
|
||||
local mason_lspconfig = require("mason-lspconfig")
|
||||
local cmp_nvim_lsp = require("cmp_nvim_lsp")
|
||||
local wk = require("which-key")
|
||||
|
||||
local capabilities = cmp_nvim_lsp.default_capabilities()
|
||||
|
||||
mason_lspconfig.setup({
|
||||
function(server_name)
|
||||
lspconfig[server_name].setup({
|
||||
capabilities = capabilities,
|
||||
})
|
||||
end,
|
||||
})
|
||||
|
||||
vim.lsp.config("lua_ls", {
|
||||
vim.lsp.config("*", {
|
||||
capabilities = capabilities,
|
||||
settings = { -- custom settings for lua
|
||||
Lua = {
|
||||
-- make the language server recognize "vim" global
|
||||
diagnostics = {
|
||||
globals = { "vim" },
|
||||
},
|
||||
workspace = {
|
||||
-- make language server aware of runtime files
|
||||
library = {
|
||||
[vim.fn.expand("$VIMRUNTIME/lua")] = true,
|
||||
[vim.fn.stdpath("config") .. "/lua"] = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
vim.lsp.config("pyright", {
|
||||
capabilities = capabilities,
|
||||
filetypes = { "python" },
|
||||
settings = {
|
||||
python = {
|
||||
pythonPath = vim.fn.exepath("python3.12"),
|
||||
},
|
||||
},
|
||||
})
|
||||
vim.lsp.config("ltex", {
|
||||
settings = {
|
||||
ltex = {
|
||||
language = "de-CH",
|
||||
checkFrequency = "save",
|
||||
},
|
||||
},
|
||||
})
|
||||
|
||||
vim.diagnostic.config({
|
||||
virtual_text = true,
|
||||
signs = true,
|
||||
virtual_lines = true,
|
||||
})
|
||||
|
||||
wk.add({
|
||||
|
||||
@@ -1,38 +1,39 @@
|
||||
return {
|
||||
"williamboman/mason.nvim",
|
||||
dependencies = {
|
||||
{
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
"WhoIsSethDaniel/mason-tool-installer.nvim",
|
||||
},
|
||||
config = function()
|
||||
local mason = require("mason")
|
||||
local mason_lspconfig = require("mason-lspconfig")
|
||||
local mason_tool_installer = require("mason-tool-installer")
|
||||
|
||||
mason.setup()
|
||||
|
||||
mason_lspconfig.setup({
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"ruff",
|
||||
"lua_ls",
|
||||
"pyright",
|
||||
"clangd",
|
||||
"marksman",
|
||||
"texlab",
|
||||
"ltex",
|
||||
"gopls",
|
||||
},
|
||||
})
|
||||
|
||||
mason_tool_installer.setup({
|
||||
},
|
||||
dependencies = {
|
||||
{ "williamboman/mason.nvim", opts = {} },
|
||||
"neovim/nvim-lspconfig",
|
||||
},
|
||||
},
|
||||
{
|
||||
"WhoIsSethDaniel/mason-tool-installer.nvim",
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"mypy",
|
||||
"black",
|
||||
"clang-format",
|
||||
"stylua",
|
||||
"prettier",
|
||||
"vale",
|
||||
"pylint",
|
||||
"latexindent",
|
||||
"goimports-reviser",
|
||||
"golines",
|
||||
"golangci-lint",
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
dependencies = {
|
||||
"williamboman/mason.nvim",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
return {
|
||||
"MeanderingProgrammer/markdown.nvim",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
dependencies = "nvim-treesitter/nvim-treesitter",
|
||||
config = function()
|
||||
local markdown = require("render-markdown")
|
||||
|
||||
markdown.setup({
|
||||
checkbox = {
|
||||
custom = {
|
||||
inprogress = { raw = "[>]", rendered = " ", highlight = "RenderedMarkdownInProgress" },
|
||||
onhold = { raw = "[=]", rendered = " ", highlight = "RenderedMarkdownOnhold" },
|
||||
cancelled = { raw = "[_]", rendered = " ", highlight = "RenderedMarkdownCancelled" },
|
||||
important = { raw = "[!]", rendered = "", highlight = "RenderedMarkdownImportant" },
|
||||
recurring = { raw = "[+]", rendered = " ", highlight = "RenderedMarkdownRecurring" },
|
||||
uncertain = { raw = "[?]", rendered = " ", highlight = "RenderedMarkdownUncertain" },
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
}
|
||||
@@ -17,8 +17,6 @@ return {
|
||||
require("luasnip.loaders.from_vscode").lazy_load()
|
||||
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets/" })
|
||||
|
||||
luasnip.filetype_extend("vimwiki", { "markdown" })
|
||||
|
||||
cmp.setup({
|
||||
completion = {
|
||||
completeopt = "menu,menuone,preview,noselect",
|
||||
@@ -44,6 +42,7 @@ return {
|
||||
sources = cmp.config.sources({
|
||||
{ name = "luasnip" }, -- snippets
|
||||
{ name = "nvim_lsp" }, -- LSP
|
||||
{ name = "lazydev" },
|
||||
{ name = "buffer" }, -- text within current buffer
|
||||
{ name = "path" }, -- file system paths
|
||||
}),
|
||||
|
||||
@@ -1,8 +0,0 @@
|
||||
return {
|
||||
"nvim-orgmode/orgmode",
|
||||
event = "VeryLazy",
|
||||
config = function()
|
||||
-- Setup orgmode
|
||||
require("orgmode").setup()
|
||||
end,
|
||||
}
|
||||
@@ -29,6 +29,7 @@ return {
|
||||
"css",
|
||||
"bash",
|
||||
"latex",
|
||||
"r",
|
||||
},
|
||||
incremental_selection = {
|
||||
enable = true,
|
||||
|
||||
14
.config/nvim/lua/jirr02/plugins/venv_selector.lua
Normal file
14
.config/nvim/lua/jirr02/plugins/venv_selector.lua
Normal file
@@ -0,0 +1,14 @@
|
||||
return {
|
||||
"linux-cultist/venv-selector.nvim",
|
||||
dependencies = {
|
||||
"neovim/nvim-lspconfig",
|
||||
},
|
||||
ft = "python", -- Load when opening Python files
|
||||
keys = {
|
||||
{ ",v", "<cmd>VenvSelect<cr>" }, -- Open picker on keymap
|
||||
},
|
||||
opts = { -- this can be an empty lua table - just showing below for clarity.
|
||||
search = {}, -- if you add your own searches, they go here.
|
||||
options = {}, -- if you add plugin options, they go here.
|
||||
},
|
||||
}
|
||||
@@ -16,8 +16,8 @@ return {
|
||||
|
||||
wk.add({
|
||||
{ "<leader>v", group = "vimtex", icon = "" },
|
||||
{ "<leader>vc", "<cmd>VimtexCompile>CR>", desc = "Compile LaTeX File", icon = "" },
|
||||
{ "<leader>vc", "<cmd>VimtexClean>CR>", desc = "Clean LaTeX directory", icon = "" },
|
||||
{ "<leader>vc", "<cmd>VimtexCompile<CR>", desc = "Compile LaTeX File", icon = "" },
|
||||
{ "<leader>vC", "<cmd>VimtexClean<CR>", desc = "Clean LaTeX directory", icon = "" },
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ return {
|
||||
{ "<leader>i", group = "interface", icon = "" },
|
||||
{ "<leader>il", "<cmd>Lazy<CR>", desc = "Open Lazy Menu" },
|
||||
{ "<leader>im", "<cmd>Mason<CR>", desc = "Open Mason Menu" },
|
||||
{ "<leader>ie", "<cmd>VenvSelect<CR>", desc = "Python Virtual Environment Selector" },
|
||||
})
|
||||
end,
|
||||
}
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -913,16 +913,19 @@ local limit = s(
|
||||
{ trig = "lim", desc = "Limit" },
|
||||
fmt(
|
||||
[[
|
||||
\lim_{{{} \to {}}} {}
|
||||
\lim{}{}
|
||||
]],
|
||||
{
|
||||
i(1, "Lower Limit"),
|
||||
i(2, "Higher Limit"),
|
||||
c(1, { t(""), sn(nil, { t("_{"), i(1), t("\\to"), i(2), t("}") }) }),
|
||||
i(0),
|
||||
}
|
||||
)
|
||||
),
|
||||
{
|
||||
condition = math,
|
||||
show_condition = math,
|
||||
}
|
||||
)
|
||||
table.insert(snippets, limit)
|
||||
table.insert(autosnippets, limit)
|
||||
|
||||
local root = s(
|
||||
{ trig = "rt", desc = "Root" },
|
||||
@@ -1262,6 +1265,24 @@ local sit = s(
|
||||
)
|
||||
table.insert(autosnippets, sit)
|
||||
|
||||
local int = s(
|
||||
{ trig = "\\int", desc = "Integral" },
|
||||
fmt(
|
||||
[[
|
||||
\int{}{}
|
||||
]],
|
||||
{
|
||||
c(1, { t(""), sn(nil, { t("_{"), i(1), t("}^{"), i(2), t("}") }) }),
|
||||
i(0),
|
||||
}
|
||||
),
|
||||
{
|
||||
condition = math,
|
||||
show_condition = math,
|
||||
}
|
||||
)
|
||||
table.insert(autosnippets, int)
|
||||
|
||||
local snin = s(
|
||||
{ trig = "nin", regTrig = true, desc = "Set no in" },
|
||||
fmt(
|
||||
@@ -1461,6 +1482,36 @@ table.insert(autosnippets, polynomial)
|
||||
|
||||
-- Greek Letters --
|
||||
|
||||
local nabla = s(
|
||||
{ trig = "nabla", regTrig = true, desc = "nabla" },
|
||||
fmt(
|
||||
[[
|
||||
\nabla
|
||||
]],
|
||||
{}
|
||||
),
|
||||
{
|
||||
condition = math,
|
||||
show_condition = math,
|
||||
}
|
||||
)
|
||||
table.insert(autosnippets, nabla)
|
||||
|
||||
local par = s(
|
||||
{ trig = "par", desc = "partial" },
|
||||
fmt(
|
||||
[[
|
||||
\partial
|
||||
]],
|
||||
{}
|
||||
),
|
||||
{
|
||||
condition = math,
|
||||
show_condition = math,
|
||||
}
|
||||
)
|
||||
table.insert(autosnippets, par)
|
||||
|
||||
local degree = s(
|
||||
{ trig = "deg", desc = "degree" },
|
||||
fmt(
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
\def\theorytitle{Theory}
|
||||
\def\theorytitle{Theorie}
|
||||
\def\corollarytitle{Corollary}
|
||||
\def\corollarytitle{Daraus folgt}
|
||||
\def\corollarytitle{Korollar}
|
||||
\def\proposaltitle{Proposal}
|
||||
\def\proposaltitle{Vorschlag}
|
||||
\def\claimtitle{Claim}
|
||||
@@ -23,7 +23,7 @@
|
||||
\def\pagetitle{Page}
|
||||
\def\pagetitle{Seite}
|
||||
\def\chaptertitle{Chapter}
|
||||
\def\pagetitle{Kapitel}
|
||||
\def\chaptertitle{Kapitel}
|
||||
|
||||
\input{preamble}
|
||||
\input{macros}
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
\usepackage{enumitem}
|
||||
\usepackage{hyperref,theoremref}
|
||||
\hypersetup{
|
||||
pdftitle={Assignment},
|
||||
pdftitle={\papertitle},
|
||||
colorlinks=true, linkcolor=doc!90,
|
||||
bookmarksnumbered=true,
|
||||
bookmarksopen=true
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
---
|
||||
work_space: "workspace"
|
||||
subject: "subject"
|
||||
tags: ["Note", "tag"]
|
||||
---
|
||||
|
||||
<!-- TODO: Edit Parameters -->
|
||||
|
||||
# Topic
|
||||
|
||||
<!-- TODO: Begin notes here -->
|
||||
@@ -1,12 +0,0 @@
|
||||
---
|
||||
project_name: "Project Name"
|
||||
space: "Space Name"
|
||||
tags: ["project", "tags"]
|
||||
project_status: "Project Status"
|
||||
---
|
||||
|
||||
<!-- TODO: Edit page parameters -->
|
||||
|
||||
# Project Name
|
||||
|
||||
<!-- TODO: Begin Project here -->
|
||||
@@ -1,10 +0,0 @@
|
||||
---
|
||||
date: "Date"
|
||||
tags: ["Todo", "Tags"]
|
||||
---
|
||||
|
||||
<!-- TODO: Edit page parameters -->
|
||||
|
||||
# Date
|
||||
|
||||
<!-- TODO: Add Todos for this day here -->
|
||||
1
.config/sioyek/prefs_user.config
Normal file
1
.config/sioyek/prefs_user.config
Normal file
@@ -0,0 +1 @@
|
||||
background_color 0 0 0
|
||||
@@ -1,5 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
WORKSOUND_FILE="/Users/jirayu/Projects/Private/dotfiles/.config/sketchybar/sound/ytmp3free.cc_green-screen-happy-happy-happy-cat-meme-youtubemp3free.org.mp3"
|
||||
BREAKSOUND_FILE="/Users/jirayu/Projects/Private/dotfiles/.config/sketchybar/sound/sad.mp3"
|
||||
STATE_FILE="/Users/jirayu/.pomodoro_sound_state"
|
||||
|
||||
playsound() {
|
||||
local current_status="$1"
|
||||
|
||||
local last_status=""
|
||||
|
||||
if [ -f "$STATE_FILE" ]; then
|
||||
last_status=$(cat "$STATE_FILE")
|
||||
fi
|
||||
|
||||
if [ "$current_status" != "$last_status" ]; then
|
||||
if [ "$current_status" == "break_done" ]; then
|
||||
afplay "$BREAKSOUND_FILE" &
|
||||
else
|
||||
afplay "$WORKSOUND_FILE" &
|
||||
fi
|
||||
|
||||
rm -f "$STATE_FILE"
|
||||
echo "$current_status" > "$STATE_FILE"
|
||||
fi
|
||||
}
|
||||
|
||||
STATUS=$(/usr/local/bin/pomodoro status)
|
||||
|
||||
if [ -z "$STATUS" ]; then
|
||||
@@ -7,14 +32,26 @@ if [ -z "$STATUS" ]; then
|
||||
label="Start a Session!" \
|
||||
icon.color="0xffed8796" \
|
||||
label.color="0xffed8796"
|
||||
elif /usr/local/bin/pomodoro status | grep -q "❗"; then
|
||||
elif /usr/local/bin/pomodoro status | grep -q "Break: ❗️"; then
|
||||
sketchybar --set pomodoro icon="" \
|
||||
label="Good Job!" \
|
||||
label="Start a new Session!" \
|
||||
icon.color="0xffed8796" \
|
||||
label.color="0xffed8796"
|
||||
elif /usr/local/bin/pomodoro status | grep -q "🍅"; then
|
||||
playsound "break_done"
|
||||
elif /usr/local/bin/pomodoro status | grep -q "Pomodoro: ❗"; then
|
||||
sketchybar --set pomodoro icon="" \
|
||||
label="Good Job! Take a break!" \
|
||||
icon.color="0xffed8796" \
|
||||
label.color="0xffed8796"
|
||||
playsound "pomodoro_done"
|
||||
elif /usr/local/bin/pomodoro status | grep -q "Pomodoro"; then
|
||||
sketchybar --set pomodoro icon="" \
|
||||
label="$(/usr/local/bin/pomodoro status -f "%r")" \
|
||||
icon.color="0xfff5bde6" \
|
||||
label.color="0xfff5bde6"
|
||||
elif /usr/local/bin/pomodoro status | grep -q "Break"; then
|
||||
sketchybar --set pomodoro icon="" \
|
||||
label="$(/usr/local/bin/pomodoro status -f "%r")" \
|
||||
icon.color="0xff7dc4e4" \
|
||||
label.color="0xff7dc4e4"
|
||||
fi
|
||||
|
||||
@@ -16,25 +16,59 @@ if [ "$STATUS" = "" ]; then
|
||||
sketchybar --set shortBreak icon="" \
|
||||
label="Short Break 5:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5"
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
sketchybar --set longBreak icon="" \
|
||||
label="Long Break 15:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5"
|
||||
else
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
elif /usr/local/bin/pomodoro status | grep -q "Break: ❗️"; then
|
||||
sketchybar --set focus icon="" \
|
||||
label="Focus 50:00" \
|
||||
icon.color="0xfff5bde6" \
|
||||
label.color="0xfff5bde6" \
|
||||
click_script="/usr/local/bin/pomodoro start --duration 50 && sketchybar --set pomodoro popup.drawing=toggle"
|
||||
sketchybar --set shortBreak icon="" \
|
||||
label="Short Break 5:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
sketchybar --set longBreak icon="" \
|
||||
label="Long Break 15:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
elif /usr/local/bin/pomodoro status | grep -q "Pomodoro: ❗"; then
|
||||
sketchybar --set focus icon="" \
|
||||
label="Focus 50:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
sketchybar --set shortBreak icon="" \
|
||||
label="Short Break 5:00" \
|
||||
icon.color="0xff91d7e3" \
|
||||
label.color="0xff91d7e3" \
|
||||
click_script="sketchybar --set pomodoro update_freq=0 icon='' label='Break Time!' icon.color='0xff91d7e3' label.color='0xff91d7e3' popup.drawing=toggle && /usr/local/bin/pomodoro break && sketchybar --set pomodoro update_freq=1"
|
||||
click_script="/usr/local/bin/pomodoro break && sketchybar --set pomodoro popup.drawing=toggle"
|
||||
sketchybar --set longBreak icon="" \
|
||||
label="Long Break 15:00" \
|
||||
icon.color="0xff91d7e3" \
|
||||
label.color="0xff91d7e3" \
|
||||
click_script="sketchybar --set pomodoro update_freq=0 icon='' label='Break Time!' icon.color='0xff91d7e3' label.color='0xff91d7e3' popup.drawing=toggle && /usr/local/bin/pomodoro break 15 && sketchybar --set pomodoro update_freq=1"
|
||||
click_script="/usr/local/bin/pomodoro break -d 15 && sketchybar --set pomodoro popup.drawing=toggle"
|
||||
else
|
||||
sketchybar --set focus icon="" \
|
||||
label="Focus 50:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
sketchybar --set shortBreak icon="" \
|
||||
label="Short Break 5:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
sketchybar --set longBreak icon="" \
|
||||
label="Long Break 15:00" \
|
||||
icon.color="0xffcad3f5" \
|
||||
label.color="0xffcad3f5" \
|
||||
click_script=""
|
||||
fi
|
||||
|
||||
@@ -15,7 +15,9 @@ if [ "$SENDER" = "volume_change" ]; then
|
||||
ICON=""
|
||||
COLOR="0xff8aadf4"
|
||||
;;
|
||||
[1-9]|[1-2][0-9]) ICON=""
|
||||
[1-9]|[1-2][0-9])
|
||||
ICON=""
|
||||
COLOR="0xffed8796"
|
||||
;;
|
||||
*)
|
||||
ICON=""
|
||||
|
||||
BIN
.config/sketchybar/sound/sad.mp3
Normal file
BIN
.config/sketchybar/sound/sad.mp3
Normal file
Binary file not shown.
Binary file not shown.
@@ -14,7 +14,7 @@ success_symbol = '[❯](bold green)' # The 'success_symbol' segment is being set
|
||||
|
||||
# Git module
|
||||
[git_branch]
|
||||
format = '[$symbol$branch(:$remote_branch)]($style)'
|
||||
format = ' [$symbol$branch(:$remote_branch)]($style)'
|
||||
|
||||
# Disable the package module, hiding it from the prompt completely
|
||||
[package]
|
||||
|
||||
1
.config/uv/uv-receipt.json
Normal file
1
.config/uv/uv-receipt.json
Normal file
@@ -0,0 +1 @@
|
||||
{"binaries":["uv","uvx"],"binary_aliases":{},"cdylibs":[],"cstaticlibs":[],"install_layout":"flat","install_prefix":"/Users/jirayu/.local/bin","modify_path":true,"provider":{"source":"cargo-dist","version":"0.30.1"},"source":{"app_name":"uv","name":"uv","owner":"astral-sh","release_type":"github"},"version":"0.9.7"}
|
||||
BIN
.config/wezterm/plugins/.opencode/opencode.db
Normal file
BIN
.config/wezterm/plugins/.opencode/opencode.db
Normal file
Binary file not shown.
BIN
.config/wezterm/plugins/.opencode/opencode.db-shm
Normal file
BIN
.config/wezterm/plugins/.opencode/opencode.db-shm
Normal file
Binary file not shown.
BIN
.config/wezterm/plugins/.opencode/opencode.db-wal
Normal file
BIN
.config/wezterm/plugins/.opencode/opencode.db-wal
Normal file
Binary file not shown.
24
.config/wezterm/plugins/gemini.lua
Normal file
24
.config/wezterm/plugins/gemini.lua
Normal file
@@ -0,0 +1,24 @@
|
||||
local wezterm = require("wezterm")
|
||||
local actions = wezterm.action
|
||||
|
||||
local module = {}
|
||||
|
||||
module.keys = {
|
||||
{
|
||||
key = "g",
|
||||
mods = "LEADER",
|
||||
action = actions.SplitPane({
|
||||
direction = "Right",
|
||||
command = {
|
||||
args = {
|
||||
"/bin/zsh",
|
||||
"-c",
|
||||
"source /Users/jirayu/.env && cat /Users/jirayu/.config/gemini/logo.txt && /Users/jirayu/go/bin/gemini -c '/Users/jirayu/.config/gemini/gemini_cli_config.json' -m 'gemini-2.5-flash'",
|
||||
},
|
||||
},
|
||||
size = { Percent = 37 },
|
||||
}),
|
||||
},
|
||||
}
|
||||
|
||||
return module
|
||||
25
.config/wezterm/plugins/opencode.lua
Normal file
25
.config/wezterm/plugins/opencode.lua
Normal file
@@ -0,0 +1,25 @@
|
||||
local wezterm = require("wezterm")
|
||||
local actions = wezterm.action
|
||||
|
||||
local module = {}
|
||||
|
||||
module.keys = {
|
||||
{
|
||||
key = "o",
|
||||
mods = "LEADER",
|
||||
action = actions.SplitPane({
|
||||
direction = "Right",
|
||||
command = {
|
||||
args = {
|
||||
"/bin/zsh",
|
||||
"-l",
|
||||
"-c",
|
||||
"/Users/jirayu/.opencode/bin/opencode",
|
||||
},
|
||||
},
|
||||
size = { Percent = 50 },
|
||||
}),
|
||||
},
|
||||
}
|
||||
|
||||
return module
|
||||
@@ -12,13 +12,12 @@ local module = {}
|
||||
local my_schema = {
|
||||
"default",
|
||||
" EDU",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/nus_II",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/physik_I",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/analysis_II",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/informatik_I",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/grundzuege_recht",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/fs25/mathematische_methoden",
|
||||
wezterm.home_dir .. "/Informatik_ETH/SS25/Informatik",
|
||||
wezterm.home_dir .. "/Polybox_ETH/",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/hs25/analysis_I",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/hs25/einfuehrung_mikrooekonomie",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/hs25/information_systems_for_engineers",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/hs25/manufacturing_of_electronic_devices",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/edu/ETH/hs25/startups_und_recht",
|
||||
" Makerspace",
|
||||
wezterm.home_dir .. "/kicad",
|
||||
wezterm.home_dir .. "/Nextcloud/Vault/maker_space",
|
||||
|
||||
@@ -9,6 +9,8 @@ local config = wezterm.config_builder()
|
||||
local sessionizer = require("plugins/sessionizer")
|
||||
local tabline = require("plugins/tabline")
|
||||
local smart_splits = require("plugins/smart_splits")
|
||||
local gemini = require("plugins/gemini")
|
||||
local opencode = require("plugins/opencode")
|
||||
|
||||
-- This will hold the actions
|
||||
|
||||
@@ -211,6 +213,14 @@ for _, key in ipairs(smart_splits.keys) do
|
||||
table.insert(config.keys, key)
|
||||
end
|
||||
|
||||
for _, key in ipairs(gemini.keys) do
|
||||
table.insert(config.keys, key)
|
||||
end
|
||||
|
||||
for _, key in ipairs(opencode.keys) do
|
||||
table.insert(config.keys, key)
|
||||
end
|
||||
|
||||
-- Font Config
|
||||
|
||||
config.font = wezterm.font({
|
||||
@@ -232,4 +242,10 @@ config.use_fancy_tab_bar = false
|
||||
|
||||
config.send_composed_key_when_left_alt_is_pressed = true
|
||||
|
||||
--Variables
|
||||
|
||||
config.set_environment_variables = {
|
||||
PATH = os.getenv("PATH"),
|
||||
}
|
||||
|
||||
return config
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -6,3 +6,4 @@
|
||||
.config/kicad/
|
||||
.config/tmux/plugins/
|
||||
.config/thefuck/
|
||||
.config/opencode
|
||||
|
||||
244
.zshrc
244
.zshrc
@@ -1,101 +1,23 @@
|
||||
# Path to your oh-my-zsh installation.
|
||||
########################
|
||||
# Initialize oh-my-zsh #
|
||||
########################
|
||||
export ZSH="$HOME/.oh-my-zsh"
|
||||
|
||||
# Set name of the theme to load --- if set to "random", it will
|
||||
# load a random theme each time oh-my-zsh is loaded, in which case,
|
||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
|
||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
|
||||
# Set list of themes to pick from when loading at random
|
||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
|
||||
# a theme from this variable instead of looking in $ZSH/themes/
|
||||
# If set to an empty array, this variable will have no effect.
|
||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
|
||||
|
||||
# Uncomment the following line to use case-sensitive completion.
|
||||
# CASE_SENSITIVE="true"
|
||||
|
||||
# Uncomment the following line to use hyphen-insensitive completion.
|
||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
|
||||
# HYPHEN_INSENSITIVE="true"
|
||||
|
||||
# Uncomment one of the following lines to change the auto-update behavior
|
||||
# zstyle ':omz:update' mode disabled # disable automatic updates
|
||||
# zstyle ':omz:update' mode auto # update automatically without asking
|
||||
# zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
|
||||
# Uncomment the following line to change how often to auto-update (in days).
|
||||
# zstyle ':omz:update' frequency 13
|
||||
|
||||
# Uncomment the following line if pasting URLs and other text is messed up.
|
||||
# DISABLE_MAGIC_FUNCTIONS="true"
|
||||
|
||||
# Uncomment the following line to disable colors in ls.
|
||||
# DISABLE_LS_COLORS="true"
|
||||
|
||||
# Uncomment the following line to disable auto-setting terminal title.
|
||||
# DISABLE_AUTO_TITLE="true"
|
||||
|
||||
# Uncomment the following line to enable command auto-correction.
|
||||
# ENABLE_CORRECTION="true"
|
||||
|
||||
# Uncomment the following line to display red dots whilst waiting for completion.
|
||||
# You can also set it to another string to have that shown instead of the default red dots.
|
||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
|
||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
|
||||
# COMPLETION_WAITING_DOTS="true"
|
||||
|
||||
# Uncomment the following line if you want to disable marking untracked files
|
||||
# under VCS as dirty. This makes repository status check for large repositories
|
||||
# much, much faster.
|
||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
|
||||
|
||||
# Uncomment the following line if you want to change the command execution time
|
||||
# stamp shown in the history command output.
|
||||
# You can set one of the optional three formats:
|
||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
|
||||
# or set a custom format using the strftime function format specifications,
|
||||
# see 'man strftime' for details.
|
||||
# HIST_STAMPS="mm/dd/yyyy"
|
||||
|
||||
# Would you like to use another custom folder than $ZSH/custom?
|
||||
# ZSH_CUSTOM=/path/to/new-custom-folder
|
||||
|
||||
# Which plugins would you like to load?
|
||||
# Standard plugins can be found in $ZSH/plugins/
|
||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
|
||||
# Example format: plugins=(rails git textmate ruby lighthouse)
|
||||
# Add wisely, as too many plugins slow down shell startup.
|
||||
#####################
|
||||
# oh-my-zsh plugins #
|
||||
#####################
|
||||
plugins=(zsh-autosuggestions sudo zsh-syntax-highlighting)
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
# User configuration
|
||||
######################
|
||||
# User configuration #
|
||||
######################
|
||||
|
||||
# export MANPATH="/usr/local/man:$MANPATH"
|
||||
export DBUS_SESSION_BUS_ADRESS="unix:path=$DBUS_LAUNCHD_SESSION_BUS_SOCKET"
|
||||
|
||||
# You may need to manually set your language environment
|
||||
# export LANG=en_US.UTF-8
|
||||
|
||||
# Preferred editor for local and remote sessions
|
||||
# if [[ -n $SSH_CONNECTION ]]; then
|
||||
# export EDITOR='vim'
|
||||
# else
|
||||
# export EDITOR='mvim'
|
||||
# fi
|
||||
|
||||
# Compilation flags
|
||||
# export ARCHFLAGS="-arch x86_64"
|
||||
|
||||
# Set personal aliases, overriding those provided by oh-my-zsh libs,
|
||||
# plugins, and themes. Aliases can be placed here, though oh-my-zsh
|
||||
# users are encouraged to define aliases within the ZSH_CUSTOM folder.
|
||||
# For a full list of active aliases, run `alias`.
|
||||
#
|
||||
# Example aliases
|
||||
# alias zshconfig="mate ~/.zshrc"
|
||||
# alias ohmyzsh="mate ~/.oh-my-zsh"
|
||||
|
||||
# on startup
|
||||
##############
|
||||
# on startup #
|
||||
##############
|
||||
|
||||
clear
|
||||
fastfetch
|
||||
@@ -103,15 +25,14 @@ fastfetch
|
||||
eval $(thefuck --alias)
|
||||
eval "$(zoxide init --cmd cd zsh)"
|
||||
|
||||
# Terminal Shortcuts
|
||||
######################
|
||||
# Terminal Shortcuts #
|
||||
######################
|
||||
|
||||
alias srz="source ~/.zshrc"
|
||||
|
||||
alias l="eza --tree --level=2 --color=always --long --git --no-filesize --icons=always --no-time --no-user --no-permissions"
|
||||
|
||||
alias python="python3.12"
|
||||
alias pip="pip3.12"
|
||||
|
||||
function ct {
|
||||
clear
|
||||
fastfetch
|
||||
@@ -132,14 +53,61 @@ function z () {
|
||||
}
|
||||
|
||||
function s () {
|
||||
sioyek $1 --new-window &>/dev/null &
|
||||
sioyek $1 --new-window --execute-command toggle_presentation_mode toggle_custom_color&>/dev/null &
|
||||
}
|
||||
|
||||
# Latex
|
||||
##########
|
||||
# Docker #
|
||||
##########
|
||||
|
||||
function isfestart ()
|
||||
{
|
||||
cp ~/Projects/Private/isfe_exercises/template/Dockerfile .
|
||||
cp ~/Projects/Private/isfe_exercises/template/install.sh .
|
||||
cp ~/Projects/Private/isfe_exercises/template/docker-compose.yml .
|
||||
cp -r ~/Projects/Private/isfe_exercises/template/files .
|
||||
cp -r ~/Projects/Private/isfe_exercises/template/notebooks .
|
||||
mv ex*_notebook.ipynb notebooks
|
||||
docker-compose build --no-cache
|
||||
docker-compose up -d
|
||||
}
|
||||
|
||||
function isfestop ()
|
||||
{
|
||||
docker-compose down
|
||||
mv notebooks/ex*_notebook.ipynb .
|
||||
rm Dockerfile
|
||||
rm install.sh
|
||||
rm docker-compose.yml
|
||||
rm -rf files
|
||||
rm -rf notebooks
|
||||
docker system prune -a
|
||||
}
|
||||
|
||||
function pestart ()
|
||||
{
|
||||
cp ~/Projects/Private/class-hs25/template/Dockerfile .
|
||||
cp ~/Projects/Private/class-hs25/template/docker-compose.yml .
|
||||
docker-compose build --no-cache
|
||||
docker-compose up -d
|
||||
}
|
||||
|
||||
function pestop ()
|
||||
{
|
||||
docker-compose down
|
||||
rm docker-compose.yml
|
||||
rm Dockerfile
|
||||
rm -rf .*
|
||||
docker system prune -a
|
||||
}
|
||||
|
||||
|
||||
#########
|
||||
# Latex #
|
||||
#########
|
||||
|
||||
function theory () {
|
||||
mkdir fig
|
||||
mkdir pdf
|
||||
cp ~/.config/nvim/templates/latex/theory/letterfonts.latex .
|
||||
cp ~/.config/nvim/templates/latex/theory/macros.latex .
|
||||
cp ~/.config/nvim/templates/latex/theory/preamble.latex .
|
||||
@@ -154,34 +122,86 @@ alias Facharbeit="cp ~/Nextcloud/Layouts/Facharbeit/Facharbeit.tex ."
|
||||
|
||||
alias Layout="cp ~/Nextcloud/Layouts/Layout/layout.tex ."
|
||||
|
||||
function graph () {
|
||||
cp ~/Nextcloud/Layouts/Graph/template.py fig/$1.py
|
||||
echo "plt.savefig($1.pdf)" >> fig/$1.py
|
||||
nvim fig/$1.py --wait
|
||||
rm fig/$1.py
|
||||
###########
|
||||
# Prompts #
|
||||
###########
|
||||
|
||||
function PromptAna {
|
||||
local prompt_text="Write a short summary in German of the Presentation to the [] supplementing the summary with content from [] from the Script of my Professor. The Summary should be 3-4 Pages of length beginning with a short overview of the chapter followed up with the relevant information. Please use LaTeX to write this summary and output your answer in a codeblock. Do not use any numbers to indicate where you got the information from. I will input this chapter to the main file so leave out the preamble as well as the begin document section. In addition, please use normal sections i.e. \\section{...} and not \\section*{...} and do not numberate the section titles."
|
||||
echo "$prompt_text" | pbcopy
|
||||
}
|
||||
|
||||
# Skript of Professors
|
||||
|
||||
function update {
|
||||
rm Ziltener_Notizen_Analysis_1_ITET_RW.pdf
|
||||
wget https://metaphor.ethz.ch/x/2024/hs/401-0231-10L/Ziltener_Notizen_Analysis_1_ITET_RW.pdf
|
||||
function PromptISFE {
|
||||
local prompt_text="Write a short summary of the Presentation to the [] supplementing the summary with content from [] from the 'Database Systems: The complete Book' Book. The Summary should be 3-4 Pages of length beginning with a short overview of the chapter followed up with the relevant information. Please use LaTeX to write this summary and output your answer in a codeblock. Do not use any numbers to indicate where you got the information from and do not citate anything from the presentation. Please rewrite the sentences from the presentation. I will input this chapter to the main file so leave out the preamble as well as the begin document section. In addition, please use normal sections i.e. \\section{...} and not \\section*{...} and do not numberate the section titles."
|
||||
echo "$prompt_text" | pbcopy
|
||||
}
|
||||
|
||||
# Initialize Starship
|
||||
function PromptMED {
|
||||
local prompt_text="Write a short summary of the Presentation to the []. The Summary should be 4-5 Pages of length beginning with a short overview of the chapter followed up with the relevant information. Please use LaTeX to write this summary and do not use any numbers to indicate where you got the information from. Please use LaTeX to write this summary and output your answer in a codeblock. Do not use any numbers to indicate where you got the information from and do not citate anything from the presentation. Please rewrite the sentences from the presentation. I will input this chapter to the main file so leave out the preamble as well as the begin document section. In addition, please use normal sections i.e. \\section{...} and not \\section*{...} and do not numberate the section titles."
|
||||
echo "$prompt_text" | pbcopy
|
||||
}
|
||||
|
||||
function PromptMikro {
|
||||
local prompt_text="Write a short summary in German of the Presentation to the [] supplementing the summary with content from [] from the 'Grundzüge der Mirkoökonomik' Book. The Summary should be 3-4 Pages of length beginning with a short overview of the chapter followed up with the relevant information. Please use LaTeX to write this summary and output your answer in a codeblock. Do not use any numbers to indicate where you got the information from and do not citate anything from the presentation. Please rewrite the sentences from the presentation. I will input this chapter to the main file so leave out the preamble as well as the begin document section. In addition, please use normal sections i.e. \\section{...} and not \\section*{...} and do not numberate the section titles."
|
||||
echo "$prompt_text" | pbcopy
|
||||
}
|
||||
|
||||
function PromptSR {
|
||||
local prompt_text="Write a short summary in German of the Presentation to the [] supplementing the summary with content from [] from the [] Script. The Summary should be 3-4 Pages of length beginning with a short overview of the chapter followed up with the relevant information. Please use LaTeX to write this summary and output your answer in a codeblock. Do not use any numbers to indicate where you got the information from and do not citate anything from the presentation or the script. Please rewrite the sentences from the presentation. I will input this chapter to the main file so leave out the preamble as well as the begin document section. In addition, please use normal sections i.e. \\section{...} and not \\section*{...} and do not numberate the section titles."
|
||||
echo "$prompt_text" | pbcopy
|
||||
}
|
||||
|
||||
#######################
|
||||
# Initialize Starship #
|
||||
#######################
|
||||
eval "$(starship init zsh)"
|
||||
export STARSHIP_CONFIG=~/.config/starship/starship.toml
|
||||
|
||||
# Setup fzf key bindings and fuzzy completion
|
||||
###############################################
|
||||
# Setup fzf key bindings and fuzzy completion #
|
||||
###############################################
|
||||
eval "$(fzf --zsh)"
|
||||
|
||||
eval "$(/usr/libexec/path_helper)"
|
||||
|
||||
# BAT (better cat)
|
||||
####################
|
||||
# BAT (better cat) #
|
||||
####################
|
||||
export BAT_THEME=Dracula
|
||||
|
||||
# Lazygit
|
||||
###########
|
||||
# Lazygit #
|
||||
###########
|
||||
alias lg="lazygit"
|
||||
|
||||
# Created by `pipx` on 2024-11-21 21:29:27
|
||||
#######
|
||||
# pip #
|
||||
#######
|
||||
export PATH="$PATH:/Users/jirayu/.local/bin"
|
||||
|
||||
#################
|
||||
# Homebrew path #
|
||||
#################
|
||||
export PATH="$PATH:/opt/homebrew/bin"
|
||||
|
||||
############
|
||||
# opencode #
|
||||
############
|
||||
export PATH=/Users/jirayu/.opencode/bin:$PATH
|
||||
export PATH=$PATH:$HOME/go/bin
|
||||
|
||||
# >>> conda initialize >>>
|
||||
# !! Contents within this block are managed by 'conda init' !!
|
||||
__conda_setup="$('/opt/homebrew/Caskroom/miniconda/base/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)"
|
||||
if [ $? -eq 0 ]; then
|
||||
eval "$__conda_setup"
|
||||
else
|
||||
if [ -f "/opt/homebrew/Caskroom/miniconda/base/etc/profile.d/conda.sh" ]; then
|
||||
. "/opt/homebrew/Caskroom/miniconda/base/etc/profile.d/conda.sh"
|
||||
else
|
||||
export PATH="/opt/homebrew/Caskroom/miniconda/base/bin:$PATH"
|
||||
fi
|
||||
fi
|
||||
unset __conda_setup
|
||||
# <<< conda initialize <<<
|
||||
|
||||
|
||||
BIN
desktop.png
BIN
desktop.png
Binary file not shown.
|
Before Width: | Height: | Size: 1.0 MiB After Width: | Height: | Size: 2.0 MiB |
Reference in New Issue
Block a user