Compare commits

...
295 Commits
Author SHA1 Message Date
Dmitry 1f52e74754 Разбить заметку по инфраструктурной безопасности 2026-06-16 21:54:17 +03:00
Dmitry 080eda2482 ada-pc: 2026-06-16 21:28:49 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 21:28:49 +03:00
Dmitry 70309d2b21 ada-pc: 2026-06-16 20:58:39 | 5
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
99 System/Cache/Pasted image 20260616205628.png
99 System/Cache/Pasted image 20260616205632.png
99 System/Cache/Pasted image 20260616205634.png
99 System/Cache/Pasted image 20260616205715.png
2026-06-16 20:58:39 +03:00
Dmitry 6028b36f14 ada-pc: 2026-06-16 20:53:38 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 20:53:38 +03:00
Dmitry 46f5b022fe ada-pc: 2026-06-16 20:48:37 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 20:48:37 +03:00
Dmitry 2eccd21884 ada-pc: 2026-06-16 20:43:36 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 20:43:36 +03:00
Dmitry 71b02a5ec8 ada-pc: 2026-06-16 20:38:35 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 20:38:35 +03:00
Dmitry 78c4c851e9 ada-pc: 2026-06-16 20:28:33 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 20:28:33 +03:00
Dmitry 1ad8968f56 ada-pc: 2026-06-16 20:23:32 | 1
Affected files:
00 Inbox/Безопасность инфраструктуры. ZTNA, SASE, DiD.md
2026-06-16 20:23:32 +03:00
Dmitry 22eda53d79 ada-pc: 2026-06-16 20:18:31 | 9
Affected files:
.obsidian/graph.json
99 System/INDEX.md
99 System/Tools/agent-tools/AGENT_TOOLS.md
99 System/Tools/agent-tools/vault_audit.py
99 System/Tools/agent-tools/vault_common.py
99 System/Tools/agent-tools/vault_frontmatter.py
99 System/Tools/agent-tools/vault_index.py
99 System/Tools/agent-tools/vault_ingest.py
AGENTS.md
2026-06-16 20:18:32 +03:00
Dmitry 3b597aad7d ada-pc: 2026-06-16 20:13:30 | 8
Affected files:
99 System/Export/agent-tools/AGENT_TOOLS.md
99 System/Export/agent-tools/vault_audit.py
99 System/Export/agent-tools/vault_common.py
99 System/Export/agent-tools/vault_frontmatter.py
99 System/Export/agent-tools/vault_index.py
99 System/Export/agent-tools/vault_ingest.py
99 System/INDEX.md
AGENTS.md
2026-06-16 20:13:30 +03:00
Dmitry be68b1a239 ada-pc: 2026-06-16 20:08:29 | 1
Affected files:
99 System/INDEX.md
2026-06-16 20:08:29 +03:00
Dmitry 1b3ccc6f35 ada-pc: 2026-06-16 20:03:28 | 2
Affected files:
90 Library/DevOps/CI-CD — основы.md
99 System/Archive/CI-CD Конвейер для сборки и доставки продукта. Построение пайплайнов.md
2026-06-16 20:03:28 +03:00
Dmitry 8d741e418f ada-pc: 2026-06-16 17:56:57 | 1
Affected files:
00 Inbox/CI-CD Конвейер для сборки и доставки продукта. Построение пайплайнов.md
2026-06-16 17:56:57 +03:00
Dmitry f1acef4dab ada-pc: 2026-06-16 17:51:56 | 1
Affected files:
00 Inbox/CI-CD Конвейер для сборки и доставки продукта. Построение пайплайнов.md
2026-06-16 17:51:57 +03:00
Dmitry de388b14ea ada-pc: 2026-06-16 17:46:56 | 5
Affected files:
.obsidian/app.json
.obsidian/appearance.json
.obsidian/core-plugins.json
.obsidian/plugins/obsidian-style-settings/data.json
00 Inbox/Без названия.md
2026-06-16 17:46:56 +03:00
Dmitry 5db8346292 ada-pc: 2026-06-16 17:41:49 | 1
Affected files:
.obsidian/plugins/editing-toolbar/data.json
2026-06-16 17:41:49 +03:00
Dmitry 3a86aa4d6a ada-pc: 2026-06-15 22:02:34 | 1
Affected files:
.obsidian/appearance.json
2026-06-15 22:02:34 +03:00
Dmitry a38ed7a5a7 ada-pc: 2026-06-15 21:57:22 | 9
Affected files:
01 Ideas/.gitkeep
02 Projects/.gitkeep
03 Journal/.gitkeep
90 Library/.gitkeep
99 System/.gitkeep
99 System/Archive/.gitkeep
99 System/Cache/.gitkeep
99 System/Export/.gitkeep
99 System/Template/.gitkeep
2026-06-15 21:57:22 +03:00
Dmitry cd69326e89 ada-pc: 2026-06-15 19:46:04 | 2
Affected files:
.gitignore
.obsidian/plugins/obsidian-icon-folder/data.json
2026-06-15 19:46:05 +03:00
Dmitry c2b9ea9dcc Merge remote-tracking branch 'origin/main' 2026-06-15 19:44:19 +03:00
Dmitry 95ac50594e Merge remote-tracking branch 'origin/main' 2026-06-15 19:44:05 +03:00
Dmitry c25c6fd615 ada-pc: 2026-06-15 19:44:02 | 1
Affected files:
.obsidian/plugins/obsidian-icon-folder/data.json
2026-06-15 19:44:02 +03:00
Dmitry 4282b925f7 arch-x1: 2026-06-15 19:43:57 | 2
Affected files:
.trash/Без названия 3.md
00 Inbox/.gitkeep
2026-06-15 19:43:57 +03:00
Dmitry 155497d932 arch-x1: 2026-06-15 19:42:54 | 1
Affected files:
99 System/INDEX.md
2026-06-15 19:42:54 +03:00
Dmitry b28230288c arch-x1: 2026-06-15 19:38:47 | 6
Affected files:
90 Library/HomeLab/Proxmox VE — local, local-lvm, LVM.md
Inbox/Proxmox VE — local, local-lvm, LVM.md
90 Library/Linux/Sudoers.md
Inbox/Sudoers.md
99 System/Archive/Proxmox VE — local, local-lvm, LVM — source.md
99 System/Archive/Sudoers — source.md
2026-06-15 19:38:47 +03:00
Dmitry ad3d377e33 Merge remote-tracking branch 'origin/main' 2026-06-15 19:06:26 +03:00
Dmitry b28ffe377c ada-pc: 2026-06-15 19:06:23 | 1
Affected files:
.obsidian/appearance.json
2026-06-15 19:06:23 +03:00
Dmitry cb9a9874ab arch-x1: 2026-06-15 14:51:57 | 4
Affected files:
.obsidian/appearance.json
.obsidian/plugins/editing-toolbar/data.json
00 Inbox/Sudoers.md
99 System/INDEX.md
2026-06-15 14:51:57 +03:00
Dmitry f5e9ea6fd7 arch-x1: 2026-06-15 14:36:56 | 1
Affected files:
00 Inbox/Proxmox VE — local, local-lvm, LVM.md
2026-06-15 14:36:56 +03:00
Dmitry e93882817d arch-x1: 2026-06-15 14:31:56 | 1
Affected files:
.obsidian/plugins/obsidian-icon-folder/data.json
2026-06-15 14:31:56 +03:00
Dmitry 2db9d82c59 arch-x1: 2026-06-15 11:48:23 | 1
Affected files:
99 System/Export/Экономический анализ - экзамен/Экономический анализ - шпора к экзамену.pdf
2026-06-15 11:48:23 +03:00
Dmitry 95227e0f42 arch-x1: 2026-06-15 11:38:23 | 1
Affected files:
99 System/Export/Экономический анализ - экзамен/Экономический анализ - шпора к экзамену.pdf
2026-06-15 11:38:23 +03:00
Dmitry 1f2b4711ab arch-x1: 2026-06-15 11:33:23 | 2
Affected files:
99 System/Export/Экономический анализ - экзамен/Экономический анализ - шпора к экзамену.html
99 System/Export/Экономический анализ - экзамен/Экономический анализ - шпора к экзамену.pdf
2026-06-15 11:33:23 +03:00
Dmitry a572bad302 arch-x1: 2026-06-15 11:28:22 | 1
Affected files:
99 System/Export/Экономический анализ - экзамен/Экономический анализ - шпора к экзамену.html
2026-06-15 11:28:22 +03:00
Dmitry a88369d800 arch-x1: 2026-06-15 11:23:22 | 2
Affected files:
.obsidian/plugins/obsidian-icon-folder/data.json
99 System/Export/Экономический анализ - экзамен/Экономический анализ - шпора к экзамену.html
2026-06-15 11:23:22 +03:00
Dmitry 03a58cda27 ada-pc: 2026-06-15 08:36:19 | 3
Affected files:
.obsidian/plugins/obsidian-linter/data.json
90 Library/HomeLab/Infrastructure — ada-dev.md
99 System/Cache/infra.excalidraw.md.md
2026-06-15 08:36:19 +03:00
Dmitry 0130b2980a ada-pc: 2026-06-15 08:31:17 | 1
Affected files:
99 System/Cache/infra.excalidraw.md.md
2026-06-15 08:31:18 +03:00
Dmitry 3a507fa69b ada-pc: 2026-06-15 08:26:17 | 1
Affected files:
99 System/Cache/infra.excalidraw.md.md
2026-06-15 08:26:17 +03:00
Dmitry bafed635c2 ada-pc: 2026-06-15 08:21:16 | 2
Affected files:
.obsidian/plugins/obsidian-excalidraw-plugin/data.json
99 System/Cache/infra.excalidraw.md.md
2026-06-15 08:21:16 +03:00
Dmitry f67061a06a ada-pc: 2026-06-14 20:51:13 | 1
Affected files:
02 Projects/Наука/НИР/УИР_Сводный_вариант.md
2026-06-14 20:51:14 +03:00
Dmitry e3adae23df ada-pc: 2026-06-12 12:54:15 | 3
Affected files:
90 Library/DevOps/CI-CD — основы.md
99 System/Cache/Pasted image 20260612125256.png
99 System/Cache/Pasted image 20260612125409.png
2026-06-12 12:54:15 +03:00
Dmitry 4c394b3f6b ada-pc: 2026-06-12 11:25:50 | 3
Affected files:
90 Library/DevOps/CI-CD — основы.md
99 System/Archive/CIСD Конвейер для сборки и доставки продукта. Знакомство с GitlabCI и Jenkins.md
99 System/INDEX.md
2026-06-12 11:25:50 +03:00
Dmitry 101cc6141f ada-pc: 2026-06-10 23:02:44 | 1
Affected files:
00 Inbox/CIСD Конвейер для сборки и доставки продукта. Знакомство с GitlabCI и Jenkins.md
2026-06-10 23:02:44 +03:00
Dmitry 4182fab2cd ada-pc: 2026-06-10 22:52:42 | 1
Affected files:
00 Inbox/CIСD Конвейер для сборки и доставки продукта. Знакомство с GitlabCI и Jenkins.md
2026-06-10 22:52:42 +03:00
Dmitry e87145d6b9 ada-pc: 2026-06-10 22:47:42 | 5
Affected files:
.trash/Pasted image 20260610224414.png
.trash/Pasted image 20260610224417.png
.trash/Pasted image 20260610224420.png
.trash/Pasted image 20260610224422.png
00 Inbox/CIСD Конвейер для сборки и доставки продукта. Знакомство с GitlabCI и Jenkins.md
2026-06-10 22:47:42 +03:00
Dmitry c405d5a5ed ada-pc: 2026-06-10 22:32:38 | 6
Affected files:
.trash/Система контроля версий. Знакомство с Git.md
.trash/УИР_Учёт_посещаемости_МИФИ.md
00 Inbox/CIСD Конвейер для сборки и доставки продукта. Знакомство с GitlabCI и Jenkins.md
02 Projects/Наука/НИР/УИР_Сводный_вариант.md
99 System/Archive/gemini-code-1780921978295.md
99 System/Archive/Обзор аналогов и обоснование инструментария системы учёта посещаемости студентов НИЯУ МИФИ.md
2026-06-10 22:32:39 +03:00
Dmitry 793c2ebf3f ada-pc: 2026-06-10 22:27:38 | 1
Affected files:
00 Inbox/Система контроля версий. Знакомство с Git.md
2026-06-10 22:27:38 +03:00
Dmitry 7247dca120 ada-pc: 2026-06-10 22:22:37 | 1
Affected files:
00 Inbox/Система контроля версий. Знакомство с Git.md
2026-06-10 22:22:37 +03:00
Dmitry 62d50b94b1 ada-pc: 2026-06-10 22:17:36 | 2
Affected files:
.obsidian/plugins/editing-toolbar/data.json
00 Inbox/Система контроля версий. Знакомство с Git.md
2026-06-10 22:17:36 +03:00
Dmitry 8091cea606 ada-pc: 2026-06-09 20:34:19 | 1
Affected files:
.obsidian/plugins/editing-toolbar/data.json
2026-06-09 20:34:19 +03:00
Dmitry 50b2b29133 arch-x1: 2026-06-09 15:18:14 | 1
Affected files:
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 15:18:14 +03:00
Dmitry 87d31a739e arch-x1: 2026-06-09 15:13:14 | 2
Affected files:
.obsidian/plugins/obsidian-linter/data.json
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 15:13:14 +03:00
Dmitry dc2c900470 arch-x1: 2026-06-09 15:08:13 | 2
Affected files:
.obsidian/community-plugins.json
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 15:08:13 +03:00
Dmitry 2dbeda37ee arch-x1: 2026-06-09 14:33:12 | 1
Affected files:
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 14:33:12 +03:00
Dmitry 108cc447b4 arch-x1: 2026-06-09 14:28:12 | 1
Affected files:
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 14:28:12 +03:00
Dmitry 8a3f69c387 arch-x1: 2026-06-09 14:23:12 | 1
Affected files:
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 14:23:12 +03:00
Dmitry 783a6535f7 arch-x1: 2026-06-09 14:18:11 | 1
Affected files:
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 14:18:11 +03:00
Dmitry 9976af5090 arch-x1: 2026-06-09 10:59:16 | 1
Affected files:
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 10:59:16 +03:00
Dmitry f43476441a arch-x1: 2026-06-09 10:54:16 | 3
Affected files:
.obsidian/plugins/editing-toolbar/data.json
.obsidian/plugins/obsidian-style-settings/data.json
00 Inbox/УИР_Сводный_вариант.md
2026-06-09 10:54:16 +03:00
Dmitry 165a4d6a49 arch-x1: 2026-06-09 10:49:10 | 2
Affected files:
.gitignore
.obsidian/plugins/obsidian-style-settings/data.json
2026-06-09 10:49:10 +03:00
Dmitry f3b2ac7136 ada-pc: 2026-06-09 05:57:55 | 5
Affected files:
.obsidian/plugins/editing-toolbar/data.json
.trash/Без названия 1.md
.trash/Без названия 2.md
00 Inbox/gemini-code-1780921978295.md
00 Inbox/Без названия.md
2026-06-09 05:57:55 +03:00
Dmitry 37bc0017c6 ada-pc: 2026-06-09 05:52:54 | 1
Affected files:
00 Inbox/Без названия.md
2026-06-09 05:52:54 +03:00
Dmitry 5799cc5faa ada-pc: 2026-06-08 23:32:27 | 1
Affected files:
.gitignore
2026-06-08 23:32:27 +03:00
Dmitry e67f17aeb9 ada-pc: 2026-06-08 23:28:47 | 1
Affected files:
.obsidian/plugins/obsidian-git/data.json
2026-06-08 23:28:47 +03:00
Dmitry 582c4edb53 ada-pc: 2026-06-08 23:27:42 | 1
Affected files:
.gitignore
2026-06-08 23:27:43 +03:00
Dmitry daa8cab29d ada-pc: 2026-06-08 23:26:46 | 2
Affected files:
.obsidian/appearance.json
.obsidian/plugins/obsidian-git/data.json
2026-06-08 23:26:46 +03:00
Dmitry 99be85cd54 vault backup: 2026-06-08 16:23:12 2026-06-08 23:25:01 +03:00
Dmitry 17177b3713 vault backup: 2026-06-08 16:18:12 2026-06-08 23:25:01 +03:00
Dmitry a1fe7024ac vault backup: 2026-06-08 08:44:11 2026-06-08 23:25:01 +03:00
Dmitry 67fbf5bbdb vault backup: 2026-06-07 18:13:09 2026-06-08 23:25:01 +03:00
Dmitry 89fb4f5f08 vault backup: 2026-06-07 18:08:08 2026-06-08 23:25:01 +03:00
Dmitry 98b27a1122 vault backup: 2026-06-07 18:03:07 2026-06-08 23:25:01 +03:00
Dmitry 3112cb771b vault backup: 2026-06-07 17:58:07 2026-06-08 23:25:01 +03:00
Dmitry 4312da6a00 vault backup: 2026-06-07 12:02:01 2026-06-08 23:25:01 +03:00
Dmitry c562fef7b0 DESKTOP-C7933M8: 2026-06-08 23:24:45 | 1 2026-06-08 23:24:45 +03:00
Dmitry df7bc370ff arch-x1: 2026-06-08 15:53:24 | 3 2026-06-08 15:53:24 +03:00
Dmitry 651ed73d41 arch-x1: 2026-06-08 15:48:31 | 1 2026-06-08 15:48:31 +03:00
Dmitry 3f3ef3327b arch-x1: 2026-06-08 15:43:31 | 1 2026-06-08 15:43:31 +03:00
Dmitry 8a93406af8 arch-x1: 2026-06-08 15:38:31 | 2 2026-06-08 15:38:31 +03:00
Dmitry 5e707dc67e arch-x1: 2026-06-08 15:33:30 | 1 2026-06-08 15:33:30 +03:00
Dmitry b1ffeb77b4 arch-x1: 2026-06-08 15:28:30 | 1 2026-06-08 15:28:30 +03:00
Dmitry 7cf226e941 arch-x1: 2026-06-08 14:58:28 | 2 2026-06-08 14:58:29 +03:00
Dmitry e418f23948 arch-x1: 2026-06-08 14:53:28 | 2 2026-06-08 14:53:28 +03:00
Dmitry 0d0985b8ca arch-x1: 2026-06-06 14:21:36 | 2 2026-06-06 14:21:36 +03:00
Dmitry 3227a5b7ec Auto | arch-x1: 2026-06-05 18:26:37 2026-06-05 18:26:37 +03:00
Dmitry 3f9a724cb0 Auto | arch-x1: 2026-06-05 18:21:31 2026-06-05 18:21:31 +03:00
Dmitry 6f990ccb2c Auto | arch-x1: 2026-06-05 16:29:53 2026-06-05 16:29:53 +03:00
Dmitry 30719cb655 Auto | arch-x1: 2026-06-05 13:54:39 2026-06-05 13:54:39 +03:00
Dmitry d66bff6b36 Auto | arch-x1: 2026-06-05 13:49:34 2026-06-05 13:49:34 +03:00
Dmitry bace5010b2 Auto | arch-x1: 2026-06-05 13:44:29 2026-06-05 13:44:29 +03:00
Dmitry cc9cf18575 Auto | arch-x1: 2026-06-05 13:39:24 2026-06-05 13:39:24 +03:00
Dmitry c322f3ab9f Auto | arch-x1: 2026-06-05 13:34:19 2026-06-05 13:34:19 +03:00
Dmitry 1acb87897f Auto | arch-x1: 2026-06-05 13:29:15 2026-06-05 13:29:15 +03:00
Dmitry 8e206fed3a Auto | arch-x1: 2026-06-05 13:24:09 2026-06-05 13:24:10 +03:00
Dmitry 6effced33f Auto | arch-x1: 2026-06-05 12:43:08 2026-06-05 12:43:08 +03:00
Dmitry 415fee6f64 Auto | arch-x1: 2026-06-05 11:53:06 2026-06-05 11:53:06 +03:00
Dmitry e6d2be39df Auto | arch-x1: 2026-06-05 11:48:06 2026-06-05 11:48:06 +03:00
Dmitry 6a61acaddb Auto | arch-x1: 2026-06-05 11:43:05 2026-06-05 11:43:05 +03:00
Dmitry 7357ad0cd7 Auto | arch-x1: 2026-06-05 11:38:05 2026-06-05 11:38:05 +03:00
Dmitry a3faafda79 Auto | arch-x1: 2026-06-05 11:33:05 2026-06-05 11:33:05 +03:00
Dmitry 3ca2d0b23e Auto | arch-x1: 2026-06-05 11:28:05 2026-06-05 11:28:05 +03:00
Dmitry 4b7f878778 Auto | arch-x1: 2026-06-05 11:23:04 2026-06-05 11:23:04 +03:00
Dmitry 403c4acbe9 Auto | arch-x1: 2026-06-05 10:52:20 2026-06-05 10:52:20 +03:00
Dmitry 314c149059 Auto | arch-x1: 2026-06-05 10:47:19 2026-06-05 10:47:19 +03:00
Dmitry eddfb6a6a5 Auto | arch-x1: 2026-06-05 10:17:18 2026-06-05 10:17:18 +03:00
Dmitry f667e1e6df Auto | arch-x1: 2026-06-05 10:07:18 2026-06-05 10:07:18 +03:00
Dmitry 60558fec7e Auto | arch-x1: 2026-06-05 09:57:18 2026-06-05 09:57:18 +03:00
Dmitry 6df125c33e Auto | arch-x1: 2026-06-05 09:47:17 2026-06-05 09:47:17 +03:00
Dmitry 1e1479e892 Auto | arch-x1: 2026-06-05 09:42:17 2026-06-05 09:42:17 +03:00
Dmitry e2508fe634 Auto | arch-x1: 2026-06-05 09:36:47 2026-06-05 09:36:47 +03:00
Dmitry 8e2644aa7f Auto | arch-x1: 2026-06-04 22:53:32 2026-06-04 22:53:32 +03:00
Dmitry 6a42177d88 Auto | arch-x1: 2026-06-04 22:48:31 2026-06-04 22:48:31 +03:00
Dmitry 78f9f7f602 Auto | arch-x1: 2026-06-04 21:55:08 2026-06-04 21:55:08 +03:00
Dmitry 41c162baad Auto | arch-x1: 2026-06-04 21:50:07 2026-06-04 21:50:07 +03:00
Dmitry 217ce2239e Auto | arch-x1: 2026-06-04 09:31:57 2026-06-04 09:31:57 +03:00
Dmitry a25051972c Auto | arch-x1: 2026-06-04 09:26:56 2026-06-04 09:26:56 +03:00
Dmitry b87cb22543 Auto | arch-x1: 2026-06-04 09:21:55 2026-06-04 09:21:55 +03:00
Dmitry 314be47f46 Auto | arch-x1: 2026-06-04 09:16:55 2026-06-04 09:16:55 +03:00
Dmitry 8e20fb2c64 Auto | arch-x1: 2026-06-04 09:11:54 2026-06-04 09:11:54 +03:00
Dmitry 3c1743632e Auto | arch-x1: 2026-06-04 09:06:53 2026-06-04 09:06:53 +03:00
Dmitry bfa7cf419b Auto | arch-x1: 2026-06-04 09:01:53 2026-06-04 09:01:53 +03:00
Dmitry 3dae1f73b3 Auto | arch-x1: 2026-06-04 08:56:52 2026-06-04 08:56:52 +03:00
Dmitry 6d2e236cc7 Auto | arch-x1: 2026-06-03 21:49:12 2026-06-03 21:49:12 +03:00
Dmitry 45ae4296e2 Auto | arch-x1: 2026-06-03 21:44:11 2026-06-03 21:44:11 +03:00
Dmitry 9580f0261e Auto | arch-x1: 2026-06-03 21:39:10 2026-06-03 21:39:10 +03:00
Dmitry 68ce894541 Auto | arch-x1: 2026-06-03 21:34:10 2026-06-03 21:34:10 +03:00
Dmitry b0e229d980 Auto | arch-x1: 2026-06-03 20:59:06 2026-06-03 20:59:06 +03:00
Dmitry f6da620f46 Auto | arch-x1: 2026-06-03 20:54:06 2026-06-03 20:54:06 +03:00
Dmitry 05c9d664b5 Auto | arch-x1: 2026-06-03 19:44:39 2026-06-03 19:44:39 +03:00
Dmitry 7cad6836f5 Auto | arch-x1: 2026-06-03 19:39:30 2026-06-03 19:39:30 +03:00
ada a473fd83c3 Обновить 90 Library/Programming/Web/Основы, селекторы и блочная модель.md 2026-06-03 15:12:46 +00:00
ada 50cb20762d Обновить 90 Library/Programming/Web/Адаптивность, Flexbox и Grid.md 2026-06-03 15:12:36 +00:00
ada d5f4e576e3 Обновить 90 Library/Programming/Python/Базовый синтаксис и основы.md 2026-06-03 15:12:21 +00:00
ada 1ed902ccbb Обновить 90 Library/Programming/Python/Работа с формами и CUD.md 2026-06-03 15:12:10 +00:00
ada e52a6d78c2 Обновить 90 Library/Programming/Python/Представления, шаблоны и CBV.md 2026-06-03 15:11:59 +00:00
ada 2292d1b5a7 Обновить 90 Library/Programming/Python/Модели и ORM.md 2026-06-03 15:11:37 +00:00
Dmitry a7feaa1c3e Auto | arch-x1: 2026-06-03 17:22:30 2026-06-03 17:22:30 +03:00
Dmitry eb0b32fc06 Auto | arch-x1: 2026-06-03 17:17:21 2026-06-03 17:17:21 +03:00
Dmitry 91da903b45 Auto | arch-x1: 2026-06-03 17:16:29 2026-06-03 17:16:29 +03:00
Dmitry 643462cc07 vault backup: 2026-06-03 17:06:25 2026-06-03 17:06:25 +03:00
Dmitry ac0d55d246 vault backup: 2026-06-03 14:32:53 2026-06-03 14:32:53 +03:00
Dmitry 954f1e84b3 vault backup: 2026-06-03 14:19:20 2026-06-03 14:19:20 +03:00
Dmitry ca4c431463 vault backup: 2026-06-03 14:14:19 2026-06-03 14:14:19 +03:00
Dmitry d8fb37c1e5 vault backup: 2026-06-03 14:09:18 2026-06-03 14:09:18 +03:00
Dmitry 1264dc9c6f vault backup: 2026-06-02 22:22:16 2026-06-02 22:22:16 +03:00
Dmitry eb01742268 vault backup: 2026-06-02 19:52:20 2026-06-02 19:52:20 +03:00
Dmitry 188c190db3 vault backup: 2026-06-02 19:42:19 2026-06-02 19:42:19 +03:00
Dmitry 00b1d607d8 vault backup: 2026-06-02 16:59:40 2026-06-02 16:59:40 +03:00
Dmitry 5a0d57e29c vault backup: 2026-06-02 16:54:40 2026-06-02 16:54:40 +03:00
Dmitry e7c4ea54a5 vault backup: 2026-06-02 16:49:40 2026-06-02 16:49:40 +03:00
Dmitry bced8ff065 vault backup: 2026-06-02 16:44:40 2026-06-02 16:44:40 +03:00
Dmitry bbc4559c93 vault backup: 2026-06-02 13:04:00 2026-06-02 13:04:00 +03:00
Dmitry c29d3dd3f1 vault backup: 2026-06-02 12:58:59 2026-06-02 12:58:59 +03:00
Dmitry 07ece03c6c vault backup: 2026-06-02 12:53:58 2026-06-02 12:53:58 +03:00
Dmitry 1de233c428 vault backup: 2026-06-02 12:48:58 2026-06-02 12:48:58 +03:00
Dmitry 154fa3547c vault backup: 2026-06-02 12:43:58 2026-06-02 12:43:58 +03:00
Dmitry d9e6f6886e vault backup: 2026-06-02 12:38:58 2026-06-02 12:38:58 +03:00
Dmitry aa39aa884f vault backup: 2026-06-02 12:33:57 2026-06-02 12:33:57 +03:00
Dmitry b5f75ae306 vault backup: 2026-06-02 12:28:57 2026-06-02 12:28:57 +03:00
Dmitry 3f50385bde vault backup: 2026-06-02 12:23:57 2026-06-02 12:23:57 +03:00
Dmitry b2cd0ad14c vault backup: 2026-06-02 11:58:39 2026-06-02 11:58:39 +03:00
Dmitry 1cc8049a3e vault backup: 2026-06-02 11:53:39 2026-06-02 11:53:39 +03:00
Dmitry 02d866edca vault backup: 2026-06-02 11:48:39 2026-06-02 11:48:39 +03:00
Dmitry dbdf61165b vault backup: 2026-06-02 11:43:38 2026-06-02 11:43:38 +03:00
Dmitry c4d045ae68 vault backup: 2026-06-02 11:38:38 2026-06-02 11:38:38 +03:00
Dmitry 1f43e40265 vault backup: 2026-06-02 11:33:38 2026-06-02 11:33:38 +03:00
Dmitry 83fb2fd5c3 vault backup: 2026-06-02 11:28:38 2026-06-02 11:28:38 +03:00
Dmitry 2b5abc8911 vault backup: 2026-06-02 11:23:37 2026-06-02 11:23:37 +03:00
Dmitry 2de38d21ef vault backup: 2026-06-02 11:18:37 2026-06-02 11:18:37 +03:00
Dmitry 0c70929d95 vault backup: 2026-06-02 11:13:37 2026-06-02 11:13:37 +03:00
Dmitry e824d3602b vault backup: 2026-06-02 11:08:36 2026-06-02 11:08:36 +03:00
Dmitry 61919799b9 vault backup: 2026-06-02 11:03:36 2026-06-02 11:03:36 +03:00
Dmitry 18273753cc vault backup: 2026-06-02 10:33:35 2026-06-02 10:33:35 +03:00
Dmitry 672414e26a vault backup: 2026-06-01 15:31:32 2026-06-01 15:31:32 +03:00
Dmitry 27f3b5dfde vault backup: 2026-06-01 15:26:32 2026-06-01 15:26:32 +03:00
Dmitry cb826ac0c2 vault backup: 2026-06-01 15:21:31 2026-06-01 15:21:31 +03:00
Dmitry fc86b59862 vault backup: 2026-06-01 15:16:31 2026-06-01 15:16:31 +03:00
Dmitry ab68251d40 vault backup: 2026-06-01 15:11:31 2026-06-01 15:11:31 +03:00
Dmitry 6510a1b0c4 vault backup: 2026-06-01 15:06:31 2026-06-01 15:06:31 +03:00
Dmitry 173f6f8b37 vault backup: 2026-06-01 15:01:30 2026-06-01 15:01:30 +03:00
Dmitry 0373b62e12 vault backup: 2026-06-01 14:56:30 2026-06-01 14:56:30 +03:00
Dmitry ffa1af5d11 vault backup: 2026-06-01 14:51:30 2026-06-01 14:51:30 +03:00
Dmitry 4d36d088da vault backup: 2026-06-01 13:01:28 2026-06-01 13:01:28 +03:00
Dmitry 064710af85 vault backup: 2026-06-01 11:30:14 2026-06-01 11:30:14 +03:00
Dmitry cfa3b4010c vault backup: 2026-06-01 11:10:16 2026-06-01 11:10:16 +03:00
Dmitry 883a6b6971 vault backup: 2026-06-01 11:05:16 2026-06-01 11:05:16 +03:00
Dmitry f5b6f91dcc vault backup: 2026-05-31 23:23:32 2026-05-31 23:23:32 +03:00
Dmitry 3ac19dba6a vault backup: 2026-05-31 22:32:11 2026-05-31 22:32:11 +03:00
Dmitry 805f6885e8 vault backup: 2026-05-31 22:11:54 2026-05-31 22:11:54 +03:00
Dmitry 67c7fad953 vault backup: 2026-05-31 21:36:25 2026-05-31 21:36:25 +03:00
Dmitry 69c6365232 vault backup: 2026-05-31 19:59:29 2026-05-31 19:59:29 +03:00
Dmitry 8314a72d15 vault backup: 2026-05-31 16:12:09 2026-05-31 16:12:09 +03:00
Dmitry c9ab38656e vault backup: 2026-05-31 16:02:09 2026-05-31 16:02:09 +03:00
Dmitry cb895adb32 vault backup: 2026-05-31 11:12:30 2026-05-31 11:12:30 +03:00
Dmitry 17176e72d1 vault backup: 2026-05-31 11:07:29 2026-05-31 11:07:29 +03:00
Dmitry 49104f64d6 vault backup: 2026-05-31 10:57:28 2026-05-31 10:57:28 +03:00
Dmitry c8b4484015 vault backup: 2026-05-31 10:33:50 2026-05-31 10:33:50 +03:00
Dmitry 8517aab239 vault backup: 2026-05-31 10:28:49 2026-05-31 10:28:49 +03:00
Dmitry 9f1ed9ce7e vault backup: 2026-05-31 10:23:48 2026-05-31 10:23:49 +03:00
Dmitry f15f5e29f2 vault backup: 2026-05-31 10:18:48 2026-05-31 10:18:48 +03:00
Dmitry 0804ea914e vault backup: 2026-05-31 10:13:47 2026-05-31 10:13:47 +03:00
Dmitry a8159f7462 vault backup: 2026-05-31 10:08:46 2026-05-31 10:08:46 +03:00
Dmitry e5f04b86af vault backup: 2026-05-31 10:03:46 2026-05-31 10:03:46 +03:00
Dmitry 3a8cc0c853 vault backup: 2026-05-31 09:58:45 2026-05-31 09:58:45 +03:00
Dmitry 1e5b0feb01 vault backup: 2026-05-31 09:53:43 2026-05-31 09:53:43 +03:00
Dmitry 9ec19b61dc vault backup: 2026-05-31 09:49:02 2026-05-31 09:49:02 +03:00
Dmitry 55f9059af8 vault backup: 2026-05-31 09:44:01 2026-05-31 09:44:01 +03:00
Dmitry 50c009be14 vault backup: 2026-05-31 09:39:00 2026-05-31 09:39:00 +03:00
Dmitry 309913deb4 vault backup: 2026-05-31 09:34:00 2026-05-31 09:34:00 +03:00
Dmitry b1843813e5 vault backup: 2026-05-31 00:49:30 2026-05-31 00:49:30 +03:00
Dmitry da085bd831 vault backup: 2026-05-31 00:44:30 2026-05-31 00:44:30 +03:00
Dmitry ccf13658a3 vault backup: 2026-05-31 00:43:13 2026-05-31 00:43:13 +03:00
Dmitry cd561b5c81 vault backup: 2026-05-31 00:39:29 2026-05-31 00:39:29 +03:00
Dmitry c8fd01ddf3 vault backup: 2026-05-31 00:34:29 2026-05-31 00:34:29 +03:00
Dmitry e9b86f37c3 vault backup: 2026-05-30 23:17:51 2026-05-30 23:17:51 +03:00
Dmitry 4ce1aa60f3 vault backup: 2026-05-30 23:12:50 2026-05-30 23:12:50 +03:00
Dmitry 3e4672c453 vault backup: 2026-05-30 23:07:49 2026-05-30 23:07:50 +03:00
Dmitry 30005f9f29 vault backup: 2026-05-30 23:02:49 2026-05-30 23:02:49 +03:00
Dmitry fa1d6ed0f7 vault backup: 2026-05-30 22:57:48 2026-05-30 22:57:48 +03:00
Dmitry 3edaeceab5 vault backup: 2026-05-30 22:52:47 2026-05-30 22:52:47 +03:00
Dmitry 47183e906a vault backup: 2026-05-30 22:47:57 2026-05-30 22:47:57 +03:00
Dmitry 71bbfbbcc9 vault backup: 2026-05-30 22:42:56 2026-05-30 22:42:56 +03:00
Dmitry ab5b5834d9 vault backup: 2026-05-30 22:38:13 2026-05-30 22:38:14 +03:00
Dmitry 65c9e2eeb9 vault backup: 2026-05-30 22:33:05 2026-05-30 22:33:05 +03:00
Dmitry 606cbec674 vault backup: 2026-05-30 22:27:57 2026-05-30 22:27:57 +03:00
Dmitry 8d270a6e13 vault backup: 2026-05-30 22:22:49 2026-05-30 22:22:49 +03:00
Dmitry a5a3d02af6 vault backup: 2026-05-30 22:17:44 2026-05-30 22:17:44 +03:00
Dmitry 4cd36d641e vault backup: 2026-05-30 20:03:03 2026-05-30 20:03:03 +03:00
Dmitry d2ee28e63f vault backup: 2026-05-30 19:58:02 2026-05-30 19:58:02 +03:00
Dmitry 195dd93068 vault backup: 2026-05-30 19:53:01 2026-05-30 19:53:01 +03:00
Dmitry bb510e36f8 vault backup: 2026-05-30 19:48:00 2026-05-30 19:48:00 +03:00
Dmitry 658db528f9 vault backup: 2026-05-30 19:43:00 2026-05-30 19:43:00 +03:00
Dmitry 9b750249ee vault backup: 2026-05-30 19:32:59 2026-05-30 19:32:59 +03:00
Dmitry 24fd37254e vault backup: 2026-05-30 19:27:58 2026-05-30 19:27:58 +03:00
Dmitry 8db8fcb011 vault backup: 2026-05-30 19:23:23 2026-05-30 19:23:23 +03:00
Dmitry c9097d64b1 vault backup: 2026-05-30 19:18:23 2026-05-30 19:18:23 +03:00
Dmitry 8e6c90e85b vault backup: 2026-05-30 19:13:23 2026-05-30 19:13:23 +03:00
Dmitry 2cdb0d54aa vault backup: 2026-05-30 19:08:23 2026-05-30 19:08:23 +03:00
Dmitry 7a4f2ced46 vault backup: 2026-05-30 19:03:22 2026-05-30 19:03:22 +03:00
Dmitry a54f2b19c3 vault backup: 2026-05-30 18:58:22 2026-05-30 18:58:22 +03:00
Dmitry e30a44d325 vault backup: 2026-05-30 18:53:22 2026-05-30 18:53:22 +03:00
Dmitry 8729de48a3 vault backup: 2026-05-30 18:48:21 2026-05-30 18:48:21 +03:00
Dmitry f7fe023eb8 vault backup: 2026-05-30 18:43:21 2026-05-30 18:43:21 +03:00
Dmitry c636a51968 vault backup: 2026-05-29 10:43:20 2026-05-29 10:43:20 +03:00
Dmitry 97220a0bfe vault backup: 2026-05-29 10:38:20 2026-05-29 10:38:20 +03:00
Dmitry 7a6ba2c299 vault backup: 2026-05-29 10:33:20 2026-05-29 10:33:20 +03:00
Dmitry 69b9c1136f vault backup: 2026-05-29 10:28:19 2026-05-29 10:28:19 +03:00
Dmitry c4224bc960 vault backup: 2026-05-29 10:05:30 2026-05-29 10:05:30 +03:00
Dmitry c1f74c4936 vault backup: 2026-05-29 10:00:29 2026-05-29 10:00:29 +03:00
Dmitry 1473371ed4 vault backup: 2026-05-29 07:44:14 2026-05-29 07:44:14 +03:00
Dmitry 2f2579f5aa vault backup: 2026-05-29 07:39:14 2026-05-29 07:39:14 +03:00
Dmitry 47eddc3b1f vault backup: 2026-05-28 13:20:40 2026-05-28 13:20:40 +03:00
Dmitry 8247d885e5 vault backup: 2026-05-28 13:15:39 2026-05-28 13:15:39 +03:00
Dmitry 2fdf7688d8 vault backup: 2026-05-26 21:26:43 2026-05-26 21:26:43 +03:00
Dmitry a30d83cb2d vault backup: 2026-05-26 21:21:43 2026-05-26 21:21:43 +03:00
Dmitry 614c8d5d1b vault backup: 2026-05-26 21:16:43 2026-05-26 21:16:43 +03:00
Dmitry 767a11925f vault backup: 2026-05-26 21:11:42 2026-05-26 21:11:42 +03:00
Dmitry 5c302c572b vault backup: 2026-05-26 21:06:42 2026-05-26 21:06:42 +03:00
Dmitry d8b30f50c3 vault backup: 2026-05-26 20:46:42 2026-05-26 20:46:42 +03:00
Dmitry a79a5ee4df vault backup: 2026-05-26 20:41:41 2026-05-26 20:41:41 +03:00
Dmitry caed0bc9f6 vault backup: 2026-05-26 19:24:42 2026-05-26 19:24:42 +03:00
Dmitry a872f8eaad vault backup: 2026-05-26 19:19:42 2026-05-26 19:19:42 +03:00
Dmitry 96f867cba5 vault backup: 2026-05-25 21:15:05 2026-05-25 21:15:05 +03:00
Dmitry fbe6bccd6d vault backup: 2026-05-25 21:10:05 2026-05-25 21:10:05 +03:00
Dmitry 8410f640df vault backup: 2026-05-25 17:07:50 2026-05-25 17:07:50 +03:00
Dmitry 326e6631c0 vault backup: 2026-05-25 16:57:50 2026-05-25 16:57:50 +03:00
Dmitry b86cfcfd2e vault backup: 2026-05-24 15:08:28 2026-05-24 15:08:29 +03:00
Dmitry 7335ca7c23 vault backup: 2026-05-24 15:03:28 2026-05-24 15:03:28 +03:00
Dmitry 6189cfdd1c vault backup: 2026-05-22 22:33:53 2026-05-22 22:33:53 +03:00
Dmitry 80b3f55102 vault backup: 2026-05-22 22:27:39 2026-05-22 22:27:39 +03:00
Dmitry 78c0b83b6b vault backup: 2026-05-22 22:22:39 2026-05-22 22:22:39 +03:00
Dmitry 07111f5757 vault backup: 2026-05-22 22:12:37 2026-05-22 22:12:37 +03:00
Dmitry 952cb56580 vault backup: 2026-05-22 21:57:37 2026-05-22 21:57:37 +03:00
Dmitry 02495382fa vault backup: 2026-05-22 16:34:44 2026-05-22 16:34:45 +03:00
Dmitry 9b82681053 vault backup: 2026-05-22 15:15:24 2026-05-22 15:15:24 +03:00
Dmitry c78b4dc74b vault backup: 2026-05-22 14:50:21 2026-05-22 14:50:21 +03:00
Dmitry 406fc8ea6d vault backup: 2026-05-22 14:45:21 2026-05-22 14:45:21 +03:00
Dmitry 6f3ec68c46 vault backup: 2026-05-22 13:12:38 2026-05-22 13:12:38 +03:00
Dmitry 497a3c2ab1 vault backup: 2026-05-22 13:07:37 2026-05-22 13:07:37 +03:00
Dmitry 52c0684e86 vault backup: 2026-05-22 12:57:37 2026-05-22 12:57:37 +03:00
Dmitry 65b15f99f1 vault backup: 2026-05-22 12:52:37 2026-05-22 12:52:37 +03:00
Dmitry d8d95a19b7 vault backup: 2026-05-22 12:32:35 2026-05-22 12:32:35 +03:00
Dmitry 188e8dc532 vault backup: 2026-05-21 13:57:55 2026-05-21 13:57:55 +03:00
Dmitry b6e3d07d88 vault backup: 2026-05-21 13:52:54 2026-05-21 13:52:54 +03:00
Dmitry dbc5281caa vault backup: 2026-05-21 13:47:53 2026-05-21 13:47:53 +03:00
Dmitry 93552f8bbe vault backup: 2026-05-21 13:42:53 2026-05-21 13:42:53 +03:00
Dmitry 06e3c64eb9 vault backup: 2026-05-21 13:37:52 2026-05-21 13:37:52 +03:00
Dmitry 67a94a63f0 vault backup: 2026-05-21 13:32:51 2026-05-21 13:32:51 +03:00
Dmitry 7b23de3473 vault backup: 2026-05-21 13:27:50 2026-05-21 13:27:50 +03:00
Dmitry a1551a127f vault backup: 2026-05-21 13:22:49 2026-05-21 13:22:49 +03:00
Dmitry 212cc4fd0e vault backup: 2026-05-21 13:17:48 2026-05-21 13:17:48 +03:00
Dmitry fa1bebbf60 vault backup: 2026-05-21 13:13:23 2026-05-21 13:13:23 +03:00
Dmitry 54e1ca8b28 vault backup: 2026-05-21 13:12:47 2026-05-21 13:12:47 +03:00
Dmitry ad6358f197 vault backup: 2026-05-20 14:40:04 2026-05-20 14:40:04 +03:00
817 changed files with 168098 additions and 135713 deletions
+11
View File
@@ -0,0 +1,11 @@
# OS / editor
.DS_Store
Thumbs.db
*~
*.swp
*.swo
.obsidian
.obsidian/
.claude
!".obsidian\\plugins\\obsidian-git"
+8 -6
View File
@@ -5,21 +5,23 @@
"attachmentFolderPath": "99 System/Cache", "attachmentFolderPath": "99 System/Cache",
"trashOption": "local", "trashOption": "local",
"showUnsupportedFiles": true, "showUnsupportedFiles": true,
"promptDelete": false, "promptDelete": true,
"pdfExportSettings": { "pdfExportSettings": {
"includeName": false, "includeName": false,
"pageSize": "Letter", "pageSize": "Legal",
"landscape": false, "landscape": false,
"margin": "0", "margin": "0",
"downscalePercent": 78 "downscalePercent": 50
}, },
"readableLineLength": true, "readableLineLength": true,
"strictLineBreaks": false, "strictLineBreaks": false,
"rightToLeft": false, "rightToLeft": false,
"defaultViewMode": "preview", "defaultViewMode": "preview",
"showLineNumber": true, "showLineNumber": true,
"openBehavior": "file:05 Tools/Study Tracker/Study Tracker", "openBehavior": "",
"userIgnoreFilters": [ "userIgnoreFilters": [
"99 System/Archive/" "99 System/"
] ],
"showInlineTitle": true,
"uriCallbacks": true
} }
+7 -6
View File
@@ -1,15 +1,16 @@
{ {
"cssTheme": "Border", "cssTheme": "AnuPpuccin",
"accentColor": "", "accentColor": "",
"enabledCssSnippets": [ "enabledCssSnippets": [
"math-blocks" "math-blocks"
], ],
"theme": "obsidian", "theme": "obsidian",
"interfaceFontFamily": "Inter", "interfaceFontFamily": "Fira Sans",
"textFontFamily": "Inter", "textFontFamily": "Fira Sans",
"baseFontSizeAction": true, "baseFontSizeAction": true,
"baseFontSize": 17, "baseFontSize": 15,
"monospaceFontFamily": "", "monospaceFontFamily": "FiraCode Nerd Font",
"nativeMenus": false, "nativeMenus": false,
"showRibbon": true "showRibbon": true,
"showViewHeader": false
} }
+3 -9
View File
@@ -1,22 +1,16 @@
[ [
"calendar",
"digitalgarden",
"obsidian-emoji-toolbar",
"editing-toolbar", "editing-toolbar",
"folder-notes",
"obsidian-linter", "obsidian-linter",
"metadata-menu", "metadata-menu",
"omnisearch", "omnisearch",
"quick-latex", "quick-latex",
"obsidian-style-settings", "obsidian-style-settings",
"obsidian-tasks-plugin",
"templater-obsidian", "templater-obsidian",
"typewriter-mode",
"waypoint",
"dataview", "dataview",
"obsidian-icon-folder", "obsidian-icon-folder",
"obsidian-git", "obsidian-git",
"obsidian-transcription",
"obsidian-excalidraw-plugin", "obsidian-excalidraw-plugin",
"terminal" "terminal",
"typewriter-mode",
"typographer"
] ]
File diff suppressed because one or more lines are too long
+5 -5
View File
@@ -3,9 +3,9 @@
"global-search": true, "global-search": true,
"switcher": true, "switcher": true,
"graph": true, "graph": true,
"backlink": true, "backlink": false,
"canvas": true, "canvas": true,
"outgoing-link": true, "outgoing-link": false,
"tag-pane": true, "tag-pane": true,
"footnotes": true, "footnotes": true,
"properties": true, "properties": true,
@@ -19,7 +19,7 @@
"bookmarks": true, "bookmarks": true,
"markdown-importer": true, "markdown-importer": true,
"zk-prefixer": false, "zk-prefixer": false,
"random-note": true, "random-note": false,
"outline": true, "outline": true,
"word-count": true, "word-count": true,
"slides": false, "slides": false,
@@ -27,7 +27,7 @@
"workspaces": false, "workspaces": false,
"file-recovery": true, "file-recovery": true,
"publish": false, "publish": false,
"sync": true, "sync": false,
"bases": true, "bases": true,
"webviewer": true "webviewer": false
} }
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"folder": "03 Journal", "folder": "03 Journal",
"template": "99 System/Template/Daily Note", "template": "99 System/Template/Daily Note",
"format": "YYYY/MM - MMMM/DD.MM.YY - dddd", "format": "YYYY/MM/DD.MM.YY",
"autorun": false "autorun": false
} }
+1 -1
View File
@@ -39,6 +39,6 @@
"repelStrength": 6.34095634095634, "repelStrength": 6.34095634095634,
"linkStrength": 0.504158004158004, "linkStrength": 0.504158004158004,
"linkDistance": 250, "linkDistance": 250,
"scale": 0.2873901792676347, "scale": 0.21176529377630143,
"close": true "close": true
} }
+11 -9
View File
@@ -72,14 +72,6 @@
"key": "M" "key": "M"
} }
], ],
"templater-obsidian:create-99 System/Template/Base Note.md": [
{
"modifiers": [
"Alt"
],
"key": "N"
}
],
"app:toggle-left-sidebar": [ "app:toggle-left-sidebar": [
{ {
"modifiers": [ "modifiers": [
@@ -114,5 +106,15 @@
"key": "O" "key": "O"
} }
], ],
"switcher:open": [] "switcher:open": [],
"terminal:toggle-focus-on-last-terminal": [],
"terminal:open-terminal.default.root": [
{
"modifiers": [
"Mod",
"Shift"
],
"key": "Enter"
}
]
} }
-10
View File
@@ -1,10 +0,0 @@
{
"shouldConfirmBeforeCreate": true,
"weekStart": "locale",
"wordsPerDot": 250,
"showWeeklyNote": false,
"weeklyNoteFormat": "",
"weeklyNoteTemplate": "",
"weeklyNoteFolder": "",
"localeOverride": "system-default"
}
-4459
View File
File diff suppressed because it is too large Load Diff
-10
View File
@@ -1,10 +0,0 @@
{
"id": "calendar",
"name": "Calendar",
"description": "Calendar view of your daily notes",
"version": "1.5.10",
"author": "Liam Cain",
"authorUrl": "https://github.com/liamcain/",
"isDesktopOnly": false,
"minAppVersion": "0.9.11"
}
+107 -52
View File
@@ -1,7 +1,7 @@
{ {
"lastVersion": "3.2.7", "lastVersion": "4.0.8",
"aestheticStyle": "tiny", "aestheticStyle": "custom",
"positionStyle": "top", "positionStyle": "fixed",
"menuCommands": [ "menuCommands": [
{ {
"id": "editing-toolbar:editor-undo", "id": "editing-toolbar:editor-undo",
@@ -411,43 +411,6 @@
"name": "Clear text formatting", "name": "Clear text formatting",
"icon": "eraser" "icon": "eraser"
}, },
{
"id": "editing-toolbar:header2-text",
"name": "Header 2",
"icon": "header-2"
},
{
"id": "editing-toolbar:header3-text",
"name": "Header 3",
"icon": "header-3"
},
{
"id": "SubmenuCommands-header",
"name": "submenu",
"icon": "header-n",
"SubmenuCommands": [
{
"id": "editing-toolbar:header1-text",
"name": "Header 1",
"icon": "header-1"
},
{
"id": "editing-toolbar:header4-text",
"name": "Header 4",
"icon": "header-4"
},
{
"id": "editing-toolbar:header5-text",
"name": "Header 5",
"icon": "header-5"
},
{
"id": "editing-toolbar:header6-text",
"name": "Header 6",
"icon": "header-6"
}
]
},
{ {
"id": "editing-toolbar:toggle-bold", "id": "editing-toolbar:toggle-bold",
"name": "Bold", "name": "Bold",
@@ -1075,7 +1038,7 @@
"shouldShowMenuOnSelect": false, "shouldShowMenuOnSelect": false,
"cMenuVisibility": true, "cMenuVisibility": true,
"cMenuBottomValue": 4.25, "cMenuBottomValue": 4.25,
"cMenuNumRows": 12, "cMenuNumRows": 1,
"cMenuWidth": 610, "cMenuWidth": 610,
"cMenuFontColor": "#2DC26B", "cMenuFontColor": "#2DC26B",
"cMenuBackgroundColor": "#d3f8b6", "cMenuBackgroundColor": "#d3f8b6",
@@ -1099,22 +1062,22 @@
"viewTypeSettings": {}, "viewTypeSettings": {},
"appearanceByStyle": { "appearanceByStyle": {
"top": { "top": {
"toolbarBackgroundColor": "#1A2F28", "toolbarBackgroundColor": "#2D3033",
"toolbarIconColor": "#D4AF37", "toolbarIconColor": "#E2E8F0",
"toolbarIconSize": 18, "toolbarIconSize": 18,
"aestheticStyle": "tiny" "aestheticStyle": "glass"
}, },
"following": { "following": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)", "toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
"toolbarIconColor": "var(--text-normal)", "toolbarIconColor": "var(--text-normal)",
"toolbarIconSize": 18, "toolbarIconSize": 18,
"aestheticStyle": "default" "aestheticStyle": "glass"
}, },
"fixed": { "fixed": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)", "toolbarBackgroundColor": "#F5F8FA",
"toolbarIconColor": "var(--text-normal)", "toolbarIconColor": "#4A5568",
"toolbarIconSize": 18, "toolbarIconSize": 12,
"aestheticStyle": "default" "aestheticStyle": "custom"
}, },
"mobile": { "mobile": {
"toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)", "toolbarBackgroundColor": "rgba(var(--background-secondary-rgb), 0.7)",
@@ -1123,9 +1086,101 @@
"aestheticStyle": "default" "aestheticStyle": "default"
} }
}, },
"toolbarBackgroundColor": "#1A2F28", "toolbarBackgroundColor": "#F5F8FA",
"toolbarIconColor": "#D4AF37", "toolbarIconColor": "#4A5568",
"toolbarIconSize": 18, "toolbarIconSize": 12,
"useCurrentLineForRegex": false, "useCurrentLineForRegex": false,
"ai": {
"enabled": false,
"consentAccepted": true,
"onboardingShown": true,
"providerMode": "pkmer-first",
"enableInlineCompletion": true,
"inlineCompletionHintLearned": false,
"completionTrigger": "manual",
"completionDelay": 500,
"enableRewrite": true,
"showRewriteToolbarOnSelection": false,
"rewriteMinSelectionLength": 1,
"pkmerApiBaseUrl": "https://newapi.pkmer.cn",
"pkmerModel": "04-fast",
"pkmerModelRouting": {
"mode": "smart",
"completion": "04-fast",
"rewrite": "04-fast",
"reasoning": "03-agent",
"artifact": "03-agent"
},
"pkmer": {
"tokenExpiresAt": 1781624499398,
"userInfo": {
"sub": "fa484d57-e07b-48f3-9410-ff0ce39782d8",
"name": "gcdmitry",
"email": "gcdmitry@gmail.com",
"ai_quota": {
"quota": 49875000,
"usedQuota": 125000,
"remainingQuota": 49875000,
"remainingTokens": 99,
"requestCount": 1
},
"thino": false,
"supporter": false
}
},
"enableCustomModel": false,
"customModel": {
"apiFormat": "openai-compatible",
"baseUrl": "",
"apiKey": "",
"model": "",
"temperature": 0.2
},
"customPromptHistory": [],
"customPromptTemplates": [
{
"id": "template-demo-variables",
"name": "📝 Summarize Key Points",
"prompt": "Analyze the structure of {{file:content}} and focus on:\n{{selection}}\n\nPlease provide:\n1. A concise overview\n2. The key points\n3. Suggestions for improvement",
"icon": "lucide-sparkles"
},
{
"id": "template-task-variables",
"name": "Extract Tasks",
"prompt": "Today's date is {{date}}. Extract all actionable tasks from {{file:content}}, with special attention to:\n{{selection}}\n\nPlease output strictly in Obsidian Tasks plugin format, one task per line:\n\n- [ ] Task description ⏫/🔼/🔽/⏬ priority\n- [ ] Task description 📅 YYYY-MM-DD due date\n- [ ] Task description ⏰ YYYY-MM-DD HH:mm reminder\n- [ ] Task description 🛫 YYYY-MM-DD start date\n- [ ] Task description 🔁 every day/week/month recurrence\n- [ ] Task description #tag #project\n\nExtraction rules:\n1. If the text implies urgency such as urgent, ASAP, immediately, or today, add ⏫.\n2. If it implies near-term timing such as tomorrow, this week, or soon, add 🔼.\n3. Convert explicit dates to 📅 YYYY-MM-DD.\n4. Convert explicit times to ⏰ YYYY-MM-DD HH:mm when possible.\n5. Add recurrence for repeated work such as 🔁 every week/month.\n6. Add practical tags for each task.\n\nExample output:\n- [ ] Finish project report ⏫ 📅 2026-04-25 #work\n- [ ] Weekly team sync 🔁 every week on Monday ⏰ 09:00 #meeting\n- [ ] Follow up on client request 🔼 📅 2026-04-23 #follow-up",
"icon": "lucide-sparkles"
},
{
"id": "template-dataview",
"name": "Generate Dataview",
"prompt": "Help me generate an Obsidian Dataview query block based on my requirement. Requirements:\n1. Use DataviewJS or DQL syntax.\n2. Include the necessary filters and sorting.\n3. Add short comments explaining each part.\n4. Use DataviewJS if the logic is complex.\n\nMy requirement:",
"icon": "lucide-database"
},
{
"id": "template-templater",
"name": "Design Templater Template",
"prompt": "Help me design an Obsidian Templater template. Requirements:\n1. Use Templater syntax (<% %>).\n2. Include dynamic date, time, and similar variables.\n3. Support user input prompts.\n4. Add necessary conditionals and loops.\n5. Comment the purpose of each section.\n\nTemplate purpose:",
"icon": "lucide-file-code"
},
{
"id": "template-mermaid",
"name": "Create Mermaid Diagram",
"prompt": "Based on my selected text {{selection}}, generate Mermaid diagram code. Requirements:\n1. Choose an appropriate diagram type such as flowchart, sequence, class, or gantt.\n2. Use clear node names.\n3. Add useful styling and comments when needed.\n4. Ensure the syntax is valid and renderable.\n",
"icon": "lucide-workflow"
},
{
"id": "template-metadata",
"name": "Design YAML",
"prompt": "Based on the current note content {{file:content}}, help me design a suitable YAML Frontmatter structure for this note. Requirements:\n1. Recommend fields that fit the note content.\n2. Include common fields such as tags, aliases, and date.\n3. Suggest useful custom fields.\n4. Briefly explain the purpose of each field.\n\nNote type:",
"icon": "lucide-file-json"
},
{
"id": "template-callout",
"name": "Wrap with Callout",
"prompt": "Based on my selected text {{selection}}, wrap it using an Obsidian Callout block. Requirements:\n1. Choose an appropriate callout type such as note, tip, warning, or danger.\n2. Support nesting and folding when helpful.\n3. Include a title and content.\n4. Allow code blocks or lists when needed.\n\nContent requirement:",
"icon": "lucide-message-square"
}
]
},
"commandIdsFixed": true "commandIdsFixed": true
} }
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "editing-toolbar", "id": "editing-toolbar",
"name": "Editing Toolbar", "name": "Editing Toolbar",
"version": "3.2.7", "version": "4.0.8",
"minAppVersion": "0.14.0", "minAppVersion": "0.14.0",
"description": "The Obsidian Editing Toolbar is modified from cmenu, which provides more powerful customization settings and has many built-in editing commands to be a MS Word-like toolbar editing experience.", "description": "The Obsidian Editing Toolbar is modified from cmenu, which provides more powerful customization settings and has many built-in editing commands to be a MS Word-like toolbar editing experience.",
"author": "Cuman", "author": "Cuman",
File diff suppressed because it is too large Load Diff
-129
View File
@@ -1,129 +0,0 @@
{
"syncFolderName": true,
"ctrlKey": true,
"altKey": false,
"hideFolderNote": true,
"templatePath": "",
"autoCreate": false,
"autoCreateFocusFiles": true,
"autoCreateForAttachmentFolder": false,
"autoCreateForFiles": false,
"enableCollapsing": false,
"excludeFolders": [],
"whitelistFolders": [],
"showDeleteConfirmation": true,
"underlineFolder": true,
"stopWhitespaceCollapsing": true,
"underlineFolderInPath": true,
"openFolderNoteOnClickInPath": true,
"openInNewTab": false,
"focusExistingTab": false,
"oldFolderNoteName": "{{folder_name}}",
"folderNoteName": "{{folder_name}}",
"folderNoteType": ".md",
"disableFolderHighlighting": false,
"newFolderNoteName": "{{folder_name}}",
"storageLocation": "insideFolder",
"syncDelete": false,
"showRenameConfirmation": true,
"defaultOverview": {
"id": "",
"folderPath": "",
"title": "{{folderName}} overview",
"showTitle": false,
"depth": 3,
"includeTypes": [
"folder",
"markdown"
],
"style": "explorer",
"disableFileTag": false,
"sortBy": "name",
"sortByAsc": true,
"showEmptyFolders": false,
"onlyIncludeSubfolders": false,
"storeFolderCondition": true,
"showFolderNotes": false,
"disableCollapseIcon": true,
"alwaysCollapse": false,
"autoSync": true,
"allowDragAndDrop": true,
"hideLinkList": true,
"hideFolderOverview": false,
"useActualLinks": false,
"fmtpIntegration": false,
"titleSize": 1,
"isInCallout": false
},
"useSubmenus": true,
"syncMove": true,
"frontMatterTitle": {
"enabled": false,
"explorer": true,
"path": true
},
"settingsTab": "folder_overview",
"supportedFileTypes": [
"md",
"canvas",
"base"
],
"boldName": false,
"boldNameInPath": false,
"cursiveName": false,
"cursiveNameInPath": false,
"disableOpenFolderNoteOnClick": false,
"openByClick": true,
"openWithCtrl": false,
"openWithAlt": false,
"excludeFolderDefaultSettings": {
"type": "folder",
"path": "",
"id": "e3c4f06e-947b-4d09-9e6f-67433bce7aee",
"subFolders": true,
"disableSync": true,
"disableAutoCreate": true,
"disableFolderNote": false,
"enableCollapsing": false,
"position": 0,
"excludeFromFolderOverview": false,
"string": "",
"hideInSettings": false,
"detached": false,
"showFolderNote": false
},
"excludePatternDefaultSettings": {
"type": "pattern",
"path": "",
"id": "9764ea24-60cf-481f-b2d5-9c1ced79f7d4",
"subFolders": true,
"disableSync": true,
"disableAutoCreate": true,
"disableFolderNote": false,
"enableCollapsing": false,
"position": 0,
"excludeFromFolderOverview": false,
"string": "",
"hideInSettings": false,
"detached": false,
"showFolderNote": false
},
"hideCollapsingIcon": false,
"hideCollapsingIconForEmptyFolders": false,
"tabManagerEnabled": true,
"ignoreAttachmentFolder": true,
"deleteFilesAction": "trash",
"openSidebar": {
"mobile": false,
"desktop": true
},
"highlightFolder": true,
"persistentSettingsTab": {
"afterRestart": true,
"afterChangingTab": true
},
"firstTimeInsertOverview": true,
"fvGlobalSettings": {
"autoUpdateLinks": true
}
}
File diff suppressed because it is too large Load Diff
-12
View File
@@ -1,12 +0,0 @@
{
"id": "folder-notes",
"name": "Folder notes",
"version": "1.8.17",
"minAppVersion": "0.15.0",
"description": "Create notes within folders that can be accessed without collapsing the folder, similar to the functionality offered in Notion.",
"author": "Lost Paul",
"authorUrl": "https://github.com/LostPaul",
"fundingUrl": "https://ko-fi.com/paul305844",
"helpUrl": "https://lostpaul.github.io/obsidian-folder-notes/",
"isDesktopOnly": false
}
-340
View File
@@ -1,340 +0,0 @@
/* ==========================================================================
General States & Utilities
========================================================================== */
.hide,
.hide-folder .folder-name,
.hide-folder-note .is-folder-note {
display: none;
}
.pointer-cursor,
.has-folder-note .nav-folder-title-content:hover,
.has-folder-note.view-header-breadcrumb:hover,
.nav-folder-collapse-indicator:hover,
.fn-delete-confirmation-modal-buttons span:hover,
.fn-delete-confirmation-modal-buttons input:hover {
cursor: pointer !important;
}
/* ==========================================================================
Tree Items
========================================================================== */
body:not(.is-grabbing) .tree-item-self.fn-is-active:hover,
body:not(.disable-folder-highlight) .tree-item-self.fn-is-active {
color: var(--nav-item-color-active);
background-color: var(--nav-item-background-active);
font-weight: var(--nav-item-weight-active);
}
/* ==========================================================================
Exclude Folder Settings
========================================================================== */
.fn-excluded-folder-heading {
margin-top: 0 !important;
border-top: 1px solid var(--background-modifier-border);
}
.add-exclude-folder-item,
.fn-exclude-folder-list {
padding-bottom: 0 !important;
}
.fn-exclude-folder-list.setting-item {
border-top: 0 !important;
border-bottom: 0 !important;
}
.fn-exclude-folder-list .setting-item-control {
display: flex;
justify-content: flex-start !important;
}
.fn-exclude-folder-list .setting-item-info {
display: none !important;
}
.fn-exclude-folder-list .search-input-container {
width: 100%;
}
/* ==========================================================================
Modal Styles
========================================================================== */
.fn-backup-warning-modal .fn-modal-button-container {
display: flex;
gap: 0.5rem;
justify-content: flex-end;
}
.fn-confirmation-modal {
padding-bottom: 0;
}
.fn-confirmation-modal .setting-item {
border-top: 0 !important;
padding-top: 0 !important;
}
:not(.is-phone) .fn-confirmation-modal-button {
margin-right: 0.7rem;
}
:not(.is-phone) .fn-delete-confirmation-modal-buttons {
display: flex;
align-items: center;
margin-top: 10px;
}
:not(.is-phone) .fn-delete-confirmation-modal-buttons .fn-confirmation-modal-button {
margin-left: auto;
}
:not(.is-phone) .fn-delete-confirmation-modal-buttons input[type="checkbox"] {
margin-right: 5px;
}
.is-phone .fn-delete-confirmation-modal-buttons {
display: flex;
flex-direction: column;
align-items: center;
}
.is-phone .fn-delete-confirmation-modal-buttons .fn-confirmation-modal-button {
margin-top: 10px;
}
/* ==========================================================================
Folder Overview
========================================================================== */
.folder-overview-container.fv-remove-edit-button .folder-overview-edit-button {
display: none;
}
.cm-line:has(.fv-link-list-item),
li:has(.fv-link-list-item),
.el-ul:has(.fv-link-list-item),
.cm-line:has(.fv-link-list-start),
.cm-line:has(.fv-link-list-end),
.fv-hide-overview {
display: none !important;
}
.folder-overview-list {
margin-top: 0 !important;
margin-bottom: 0 !important;
padding-bottom: 1.200 !important;
padding-top: 1.200 !important;
}
.folder-overview-list-item {
display: flex;
}
.folder-overview-list::marker {
color: var(--text-faint);
}
.folder-list::marker {
color: var(--text-normal) !important;
}
.folder-overview-grid {
display: grid;
grid-gap: 20px;
grid-template-columns: repeat(3, 1fr);
}
.folder-overview-grid-item {
flex: 1 1 auto;
margin: 0 1.2rem 1.2rem 0;
}
.folder-overview-grid-item-article article {
display: flex;
flex-direction: column;
justify-content: space-between;
padding: 15px;
flex: 1;
}
.folder-overview-grid-item-article a {
text-decoration: none !important;
}
.folder-overview-grid-item-article h1 {
font-size: 1.2rem;
}
.overview-setting-item-fv {
border-top: 1px solid var(--background-modifier-border);
padding: 0.75em 0;
align-items: center;
}
.overview-setting-item-fv .setting-item {
padding: 0;
}
/* ==========================================================================
File Explorer & Path Styling
========================================================================== */
.folder-note-underline .has-folder-note .nav-folder-title-content {
text-decoration-line: underline;
text-decoration-color: var(--text-faint);
text-decoration-thickness: 2px;
text-underline-offset: 1px;
}
.folder-note-underline-path .has-folder-note.view-header-breadcrumb {
text-decoration-line: underline;
text-decoration-color: var(--text-faint);
text-decoration-thickness: 1px;
text-underline-offset: 2px;
}
.folder-note-bold .has-folder-note .nav-folder-title-content,
.folder-note-bold-path .has-folder-note.view-header-breadcrumb {
font-weight: bold;
}
.folder-note-cursive .has-folder-note .nav-folder-title-content,
.folder-note-cursive-path .has-folder-note.view-header-breadcrumb {
font-style: italic;
}
/* Collapse Icon Handling */
.fn-folder-overview-collapse-icon {
display: block !important;
}
.fn-has-no-files .collapse-icon,
.fn-hide-collapse-icon .has-folder-note.only-has-folder-note .tree-item-icon,
body.fn-ignore-attachment-folder.fn-hide-collapse-icon .only-has-folder-note .fn-empty-folder.fn-has-attachment-folder .tree-item-icon,
body.fn-hide-collapse-icon .only-has-folder-note .fn-empty-folder:not(.fn-has-attachment-folder) .tree-item-icon,
body.fn-hide-empty-collapse-icon :not(.only-has-folder-note) > .fn-empty-folder:not(.fn-has-attachment-folder) .tree-item-icon,
body.fn-hide-collapse-icon.only-has-folder-note:not(.is-collapsed):not(.show-folder-note-in-explorer)>.nav-folder-children {
display: none;
}
/* ==========================================================================
Settings Tabs
========================================================================== */
.fn-settings-tab-bar {
display: flex;
flex-direction: row;
padding-bottom: 1rem;
}
.fn-settings-tab {
display: flex;
flex-direction: row;
align-items: center;
gap: var(--size-4-2);
padding: 10px;
border: 1px solid var(--background-modifier-border);
}
.fn-settings-tab-active {
background-color: var(--color-accent);
color: var(--text-on-accent);
}
.fn-settings-tab-name {
font-weight: bold;
}
.fn-settings-tab-icon {
display: flex;
}
/* ==========================================================================
Suggestion Container
========================================================================== */
.fn-suggestion-container {
position: absolute;
overflow: hidden;
display: flex;
flex-direction: column;
background-color: var(--background-primary);
max-width: 500px;
max-height: 300px;
border-radius: var(--radius-m);
border: 1px solid var(--background-modifier-border);
box-shadow: var(--shadow-s);
z-index: var(--layer-notice);
}
/* ==========================================================================
Whitelist Folder Input (Desktop & Mobile)
========================================================================== */
/* Default Desktop Layout */
.fn-whitelist-folder-input-container {
display: flex;
justify-content: space-between;
align-items: center;
width: 100%;
margin: 0;
}
.fn-whitelist-folder-input-container input {
flex-grow: 1;
width: auto;
margin-right: 8px;
height: 40px;
box-sizing: border-box;
}
.fn-whitelist-folder-buttons {
display: flex;
gap: 8px;
justify-content: flex-end;
align-items: center;
flex-grow: 0;
flex-shrink: 0;
}
/* Mobile Overrides */
@media (max-width: 768px) {
.fn-whitelist-folder-input-container {
display: block;
width: 100%;
text-align: center;
}
.fn-whitelist-folder-input-container input {
width: 100%;
margin-right: 0;
}
.fn-whitelist-folder-buttons {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
width: 100%;
}
.is-phone .fn-overview-folder-path .setting-item-control {
display: block;
}
}
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "metadata-menu", "id": "metadata-menu",
"name": "Metadata Menu", "name": "Metadata Menu",
"version": "0.8.11", "version": "0.8.12",
"minAppVersion": "1.4.16", "minAppVersion": "1.4.16",
"description": "For data quality enthusiasts (and dataview users): manage the metadata of your notes.", "description": "For data quality enthusiasts (and dataview users): manage the metadata of your notes.",
"author": "mdelobelle", "author": "mdelobelle",
+36 -26
View File
@@ -189,6 +189,12 @@
stroke: var(--color-green); stroke: var(--color-green);
} }
.metadata-menu.modal-container .modal {
padding-top: 40px;
}
.metadata-menu.modal-container .modal .modal-close-button {
padding-top: 35px;
}
.metadata-menu.modal-container.narrow .modal { .metadata-menu.modal-container.narrow .modal {
width: initial; width: initial;
} }
@@ -252,7 +258,7 @@
font-style: italic; font-style: italic;
color: var(--color-accent); color: var(--color-accent);
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container .field-container .info { .metadata-menu.modal-container .field-container .info {
display: none; display: none;
} }
@@ -338,7 +344,7 @@
.metadata-menu.modal-container .field-container .date-input-wrapper .master-input.datetime { .metadata-menu.modal-container .field-container .date-input-wrapper .master-input.datetime {
width: 14em; width: 14em;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container .field-container .date-input-wrapper .master-input { .metadata-menu.modal-container .field-container .date-input-wrapper .master-input {
display: none; display: none;
} }
@@ -348,7 +354,6 @@
margin-right: 0; margin-right: 0;
} }
.metadata-menu.modal-container .field-container .date-input-wrapper .time-picker { .metadata-menu.modal-container .field-container .date-input-wrapper .time-picker {
width: 2em;
margin-right: 0.5em; margin-right: 0.5em;
font-size: large; font-size: large;
} }
@@ -624,7 +629,7 @@
width: auto; width: auto;
min-width: var(--dialog-width); min-width: var(--dialog-width);
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .modal { .metadata-menu.modal-container.note-fields-modal .modal {
max-width: 97vw; max-width: 97vw;
min-width: 0px; min-width: 0px;
@@ -638,7 +643,7 @@
grid-template-columns: auto auto 1fr auto; grid-template-columns: auto auto 1fr auto;
margin-top: 3px; margin-top: 3px;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .note-fields-container { .metadata-menu.modal-container.note-fields-modal .note-fields-container {
grid-template-columns: 270px 75px; grid-template-columns: 270px 75px;
} }
@@ -650,7 +655,7 @@
grid-column: 2; grid-column: 2;
display: flex; display: flex;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-settings-spacer { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-settings-spacer {
width: 100%; width: 100%;
} }
@@ -658,7 +663,7 @@
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper {
grid-column: 3; grid-column: 3;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper {
grid-column: 1; grid-column: 1;
margin-bottom: 1em; margin-bottom: 1em;
@@ -668,7 +673,7 @@
grid-column: 4; grid-column: 4;
display: flex; display: flex;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper {
grid-column: 2; grid-column: 2;
margin-bottom: 1em; margin-bottom: 1em;
@@ -691,7 +696,7 @@
padding-left: 0.6em; padding-left: 0.6em;
border: none; border: none;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-name-wrapper .field-item.field-name, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper .field-item.field-name, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-item.field-name, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper .field-item.field-name { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-name-wrapper .field-item.field-name, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper .field-item.field-name, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-item.field-name, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper .field-item.field-name {
padding-left: 0; padding-left: 0;
} }
@@ -703,7 +708,7 @@
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-name-wrapper .field-item .field-type, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper .field-item .field-type, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-item .field-type, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper .field-item .field-type { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-name-wrapper .field-item .field-type, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper .field-item .field-type, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-item .field-type, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper .field-item .field-type {
margin-top: 0.25em; margin-top: 0.25em;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container.note-fields-modal .note-fields-container .field-name-wrapper .field-item .field-type.chip, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper .field-item .field-type.chip, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-item .field-type.chip, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper .field-item .field-type.chip { .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-name-wrapper .field-item .field-type.chip, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-value-wrapper .field-item .field-type.chip, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-settings-wrapper .field-item .field-type.chip, .metadata-menu.modal-container.note-fields-modal .note-fields-container .field-options-wrapper .field-item .field-type.chip {
margin-right: 0; margin-right: 0;
} }
@@ -758,6 +763,12 @@
margin: 0 0.5em; margin: 0 0.5em;
} }
.metadata-menu.modal-container .modal {
padding-top: 40px;
}
.metadata-menu.modal-container .modal .modal-close-button {
padding-top: 35px;
}
.metadata-menu.modal-container.narrow .modal { .metadata-menu.modal-container.narrow .modal {
width: initial; width: initial;
} }
@@ -821,7 +832,7 @@
font-style: italic; font-style: italic;
color: var(--color-accent); color: var(--color-accent);
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container .field-container .info { .metadata-menu.modal-container .field-container .info {
display: none; display: none;
} }
@@ -907,7 +918,7 @@
.metadata-menu.modal-container .field-container .date-input-wrapper .master-input.datetime { .metadata-menu.modal-container .field-container .date-input-wrapper .master-input.datetime {
width: 14em; width: 14em;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.modal-container .field-container .date-input-wrapper .master-input { .metadata-menu.modal-container .field-container .date-input-wrapper .master-input {
display: none; display: none;
} }
@@ -917,7 +928,6 @@
margin-right: 0; margin-right: 0;
} }
.metadata-menu.modal-container .field-container .date-input-wrapper .time-picker { .metadata-menu.modal-container .field-container .date-input-wrapper .time-picker {
width: 2em;
margin-right: 0.5em; margin-right: 0.5em;
font-size: large; font-size: large;
} }
@@ -1361,7 +1371,7 @@
grid-template-columns: repeat(3, 1fr); grid-template-columns: repeat(3, 1fr);
grid-gap: 10px; grid-gap: 10px;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.prompt.media-as-cards .prompt-results { .prompt.media-as-cards .prompt-results {
grid-template-columns: auto; grid-template-columns: auto;
} }
@@ -1529,7 +1539,7 @@
display: grid; display: grid;
grid-template-columns: auto auto auto 1fr; grid-template-columns: auto auto auto 1fr;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-fields .fields-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container { .metadata-menu.fileclass-view .fv-fields .fields-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container {
grid-template-columns: auto auto auto; grid-template-columns: auto auto auto;
} }
@@ -1541,7 +1551,7 @@
font-weight: 500; font-weight: 500;
display: inline-flex; display: inline-flex;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-fields .fields-container .name-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .name-container { .metadata-menu.fileclass-view .fv-fields .fields-container .name-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .name-container {
margin-top: 1em; margin-top: 1em;
} }
@@ -1554,7 +1564,7 @@
.metadata-menu.fileclass-view .fv-fields .fields-container .type-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .type-container { .metadata-menu.fileclass-view .fv-fields .fields-container .type-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .type-container {
grid-column: 2; grid-column: 2;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-fields .fields-container .type-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .type-container { .metadata-menu.fileclass-view .fv-fields .fields-container .type-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .type-container {
margin-top: 1em; margin-top: 1em;
} }
@@ -1575,7 +1585,7 @@
grid-column: 3; grid-column: 3;
display: flex; display: flex;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-fields .fields-container .buttons-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .buttons-container { .metadata-menu.fileclass-view .fv-fields .fields-container .buttons-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .buttons-container {
margin-top: 1em; margin-top: 1em;
} }
@@ -1583,7 +1593,7 @@
.metadata-menu.fileclass-view .fv-fields .fields-container .options-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .options-container { .metadata-menu.fileclass-view .fv-fields .fields-container .options-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .options-container {
grid-column: 4; grid-column: 4;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-fields .fields-container .options-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .options-container { .metadata-menu.fileclass-view .fv-fields .fields-container .options-container, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .options-container {
grid-column: 1; grid-column: 1;
grid-column-start: span 3; grid-column-start: span 3;
@@ -1594,7 +1604,7 @@
margin-left: 1em; margin-left: 1em;
color: var(--text-muted); color: var(--text-muted);
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-fields .fields-container .options-container .description, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .options-container .description { .metadata-menu.fileclass-view .fv-fields .fields-container .options-container .description, .metadata-menu.fileclass-codeblock-view .fv-fields .fields-container .options-container .description {
margin-left: 0em; margin-left: 0em;
white-space: normal; white-space: normal;
@@ -1638,7 +1648,7 @@
grid-template-columns: auto auto auto 1fr; grid-template-columns: auto auto auto 1fr;
align-items: center; align-items: center;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-settings .settings-container, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container { .metadata-menu.fileclass-view .fv-settings .settings-container, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container {
grid-template-columns: 1fr auto; grid-template-columns: 1fr auto;
} }
@@ -1649,7 +1659,7 @@
white-space: nowrap; white-space: nowrap;
font-weight: 500; font-weight: 500;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-settings .settings-container .label, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .label { .metadata-menu.fileclass-view .fv-settings .settings-container .label, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .label {
margin-top: 1em; margin-top: 1em;
} }
@@ -1658,7 +1668,7 @@
grid-column: 3; grid-column: 3;
margin: 0.2em 0em 0.2em 0; margin: 0.2em 0em 0.2em 0;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-settings .settings-container .action, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .action { .metadata-menu.fileclass-view .fv-settings .settings-container .action, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .action {
grid-column: 1; grid-column: 1;
grid-column-start: span 2; grid-column-start: span 2;
@@ -1719,7 +1729,7 @@
.metadata-menu.fileclass-view .fv-settings .settings-container .tooltip-btn, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .tooltip-btn { .metadata-menu.fileclass-view .fv-settings .settings-container .tooltip-btn, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .tooltip-btn {
grid-column: 2; grid-column: 2;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-settings .settings-container .tooltip-btn, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .tooltip-btn { .metadata-menu.fileclass-view .fv-settings .settings-container .tooltip-btn, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .tooltip-btn {
margin-top: 1em; margin-top: 1em;
} }
@@ -1740,7 +1750,7 @@
line-break: strict; line-break: strict;
line-height: normal; line-height: normal;
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-settings .settings-container .tooltip-text, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .tooltip-text { .metadata-menu.fileclass-view .fv-settings .settings-container .tooltip-text, .metadata-menu.fileclass-codeblock-view .fv-settings .settings-container .tooltip-text {
grid-column: 1; grid-column: 1;
grid-column-start: span 2; grid-column-start: span 2;
@@ -1781,7 +1791,7 @@
} }
*/ */
} }
@media screen and (max-width: 400px) { @media screen and (max-width: 440px) {
.metadata-menu.fileclass-view .fv-table .options, .metadata-menu.fileclass-codeblock-view .fv-table .options { .metadata-menu.fileclass-view .fv-table .options, .metadata-menu.fileclass-codeblock-view .fv-table .options {
max-height: 50em; max-height: 50em;
overflow: scroll; overflow: scroll;
File diff suppressed because one or more lines are too long
@@ -1,9 +0,0 @@
{
"id": "obsidian-emoji-toolbar",
"name": "Emoji Toolbar",
"version": "1.0.0",
"description": "Quickly search for and insert emojis into your notes.",
"author": "oliveryh",
"authorUrl": "https://github.com/oliveryh/obsidian-emoji-toolbar",
"isDesktopOnly": false
}
-31
View File
@@ -1,31 +0,0 @@
img.emoji {
height: 1em;
width: 1em;
margin: 0 0.05em 0 0.1em;
vertical-align: -0.1em;
display: inline-block;
}
#emoji-modal {
padding: 0px;
min-width: unset;
width: unset !important;
.modal-header {
display: none;
}
.modal-content {
margin-top: 0px;
}
.button {
background-color: unset;
border: 0px !important;
box-shadow: 0px !important;
}
.modal-close-button {
visibility: hidden;
}
}
+6 -3
View File
@@ -1,4 +1,5 @@
{ {
"showTabTitlebarButtons": true,
"copyLinkToElemenetAnchorTo100": false, "copyLinkToElemenetAnchorTo100": false,
"copyFrameLinkByName": false, "copyFrameLinkByName": false,
"disableDoubleClickTextEditing": false, "disableDoubleClickTextEditing": false,
@@ -85,7 +86,7 @@
"pageTransclusionCharLimit": 200, "pageTransclusionCharLimit": 200,
"wordWrappingDefault": 0, "wordWrappingDefault": 0,
"removeTransclusionQuoteSigns": true, "removeTransclusionQuoteSigns": true,
"iframelyAllowed": true, "oEmbedAllowed": false,
"pngExportScale": 1, "pngExportScale": 1,
"exportWithTheme": true, "exportWithTheme": true,
"exportWithBackground": true, "exportWithBackground": true,
@@ -99,6 +100,7 @@
"embedType": "excalidraw", "embedType": "excalidraw",
"embedMarkdownCommentLinks": true, "embedMarkdownCommentLinks": true,
"embedWikiLink": true, "embedWikiLink": true,
"embedPlaceholderImage": true,
"syncExcalidraw": false, "syncExcalidraw": false,
"experimentalFileType": false, "experimentalFileType": false,
"experimentalFileTag": "✏️", "experimentalFileTag": "✏️",
@@ -111,13 +113,14 @@
"zoteroCompatibility": false, "zoteroCompatibility": false,
"fieldSuggester": true, "fieldSuggester": true,
"enableOnloadScripts": false, "enableOnloadScripts": false,
"enableCommandLinks": false,
"compatibilityMode": false, "compatibilityMode": false,
"drawingOpenCount": 0, "drawingOpenCount": 0,
"library": "deprecated", "library": "deprecated",
"library2": { "library2": {
"type": "excalidrawlib", "type": "excalidrawlib",
"version": 2, "version": 2,
"source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag/2.23.0", "source": "https://github.com/zsviczian/obsidian-excalidraw-plugin/releases/tag2.23.12",
"libraryItems": [] "libraryItems": []
}, },
"imageElementNotice": true, "imageElementNotice": true,
@@ -128,7 +131,7 @@
"mdBorderColor": "Black", "mdBorderColor": "Black",
"mdCSS": "", "mdCSS": "",
"scriptEngineSettings": {}, "scriptEngineSettings": {},
"previousRelease": "2.23.0", "previousRelease": "2.23.12",
"showReleaseNotes": true, "showReleaseNotes": true,
"excalidrawMasteryPromoCollapsed": false, "excalidrawMasteryPromoCollapsed": false,
"compareManifestToPluginVersion": false, "compareManifestToPluginVersion": false,
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -1,8 +1,8 @@
{ {
"id": "obsidian-excalidraw-plugin", "id": "obsidian-excalidraw-plugin",
"name": "Excalidraw", "name": "Excalidraw",
"version": "2.23.0", "version": "2.23.12",
"minAppVersion": "1.5.7", "minAppVersion": "1.8.7",
"description": "Sketch Your Mind. Edit and view Excalidraw drawings. Enter the world of 4D Visual PKM.", "description": "Sketch Your Mind. Edit and view Excalidraw drawings. Enter the world of 4D Visual PKM.",
"author": "Zsolt Viczian", "author": "Zsolt Viczian",
"authorUrl": "https://excalidraw-obsidian.online", "authorUrl": "https://excalidraw-obsidian.online",
File diff suppressed because one or more lines are too long
+8 -8
View File
@@ -1,22 +1,22 @@
{ {
"commitMessage": "vault backup: {{date}}", "commitMessage": "{{hostname}}: {{date}} | {{numFiles}}",
"autoCommitMessage": "vault backup: {{date}}", "autoCommitMessage": "{{hostname}}: {{date}} | {{numFiles}}",
"commitMessageScript": "", "commitMessageScript": "",
"commitDateFormat": "YYYY-MM-DD HH:mm:ss", "commitDateFormat": "YYYY-MM-DD HH:mm:ss",
"autoSaveInterval": 5, "autoSaveInterval": 5,
"autoPushInterval": 5, "autoPushInterval": 5,
"autoPullInterval": 0, "autoPullInterval": 0,
"autoPullOnBoot": false, "autoPullOnBoot": true,
"autoCommitOnlyStaged": false, "autoCommitOnlyStaged": false,
"disablePush": false, "disablePush": false,
"pullBeforePush": false, "pullBeforePush": true,
"disablePopups": false, "disablePopups": false,
"showErrorNotices": true, "showErrorNotices": true,
"disablePopupsForNoChanges": false, "disablePopupsForNoChanges": false,
"listChangedFilesInMessageBody": false, "listChangedFilesInMessageBody": true,
"showStatusBar": true, "showStatusBar": true,
"updateSubmodules": false, "updateSubmodules": false,
"syncMethod": "reset", "syncMethod": "merge",
"mergeStrategy": "none", "mergeStrategy": "none",
"customMessageOnAutoBackup": false, "customMessageOnAutoBackup": false,
"autoBackupAfterFileChange": false, "autoBackupAfterFileChange": false,
@@ -28,11 +28,11 @@
"showedMobileNotice": true, "showedMobileNotice": true,
"refreshSourceControlTimer": 7000, "refreshSourceControlTimer": 7000,
"showBranchStatusBar": true, "showBranchStatusBar": true,
"setLastSaveToLastCommit": false, "setLastSaveToLastCommit": true,
"submoduleRecurseCheckout": false, "submoduleRecurseCheckout": false,
"gitDir": "", "gitDir": "",
"showFileMenu": true, "showFileMenu": true,
"authorInHistoryView": "hide", "authorInHistoryView": "initials",
"dateInHistoryView": false, "dateInHistoryView": false,
"diffStyle": "split", "diffStyle": "split",
"hunks": { "hunks": {
+258 -295
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -6,5 +6,5 @@
"description": "Integrate Git version control with automatic backup and other advanced features.", "description": "Integrate Git version control with automatic backup and other advanced features.",
"isDesktopOnly": false, "isDesktopOnly": false,
"fundingUrl": "https://ko-fi.com/vinzent", "fundingUrl": "https://ko-fi.com/vinzent",
"version": "2.38.2" "version": "2.38.3"
} }
+20 -25
View File
@@ -8,15 +8,6 @@
} }
} }
.git-signs-gutter {
.cm-gutterElement {
/* Needed to align the sign properly for different line heigts. Such as
* when having a heading or list item.
*/
padding-top: 0 !important;
}
}
.workspace-leaf-content[data-type="git-view"] .button-border { .workspace-leaf-content[data-type="git-view"] .button-border {
border: 2px solid var(--interactive-accent); border: 2px solid var(--interactive-accent);
border-radius: var(--radius-s); border-radius: var(--radius-s);
@@ -108,7 +99,7 @@
display: flex; display: flex;
} }
.git-tools .buttons > * { .git-tools .buttons > * {
padding: 0 0; padding: 0;
height: auto; height: auto;
} }
@@ -175,7 +166,7 @@ which itself is adapted from the diff2html library with the following original l
--git-change-bg: #ffd55840; --git-change-bg: #ffd55840;
--git-selected: #3572b0; --git-selected: #3572b0;
--git-delete: #c33; --git-delete: #cc3333;
--git-insert: #399839; --git-insert: #399839;
--git-change: #d0b44c; --git-change: #d0b44c;
--git-move: #3572b0; --git-move: #3572b0;
@@ -538,13 +529,24 @@ which itself is adapted from the diff2html library with the following original l
.d2h-diff-tbody { .d2h-diff-tbody {
position: relative; position: relative;
} }
/* My additions */
.cm-merge-revert {
width: 4em;
}
/* Ensure that merge revert markers are positioned correctly */
.cm-merge-revert > * {
position: absolute;
background-color: var(--background-secondary);
display: flex;
}
} }
/* ====================== Line Authoring Information ====================== */ /* ====================== Line Authoring Information ====================== */
.cm-gutterElement.obs-git-blame-gutter { .cm-gutterElement.obs-git-blame-gutter {
/* Add background color to spacing inbetween and around the gutter for better aesthetics */ /* Add background color to spacing inbetween and around the gutter for better aesthetics */
border-width: 0px 2px 0.2px 2px; border-width: 0px 2px 0.2px;
border-style: solid; border-style: solid;
border-color: var(--background-secondary); border-color: var(--background-secondary);
background-color: var(--background-secondary); background-color: var(--background-secondary);
@@ -557,7 +559,7 @@ which itself is adapted from the diff2html library with the following original l
font-family: monospace; font-family: monospace;
height: 100%; /* ensure, that age-based background color occupies entire parent */ height: 100%; /* ensure, that age-based background color occupies entire parent */
text-align: right; text-align: right;
padding: 0px 6px 0px 6px; padding: 0px 6px;
white-space: pre; /* Keep spaces and do not collapse them. */ white-space: pre; /* Keep spaces and do not collapse them. */
} }
@@ -602,6 +604,11 @@ which itself is adapted from the diff2html library with the following original l
.git-signs-gutter { .git-signs-gutter {
.cm-gutterElement { .cm-gutterElement {
display: grid; display: grid;
/* Needed to align the sign properly for different line heigts. Such as
* when having a heading or list item.
*/
padding-top: 0 !important;
} }
} }
@@ -669,18 +676,6 @@ div:hover > .git-gutter-marker.git-changedelete {
opacity: 0.5; opacity: 0.5;
} }
.git-diff {
.cm-merge-revert {
width: 4em;
}
/* Ensure that merge revert markers are positioned correctly */
.cm-merge-revert > * {
position: absolute;
background-color: var(--background-secondary);
display: flex;
}
}
/* Prevent shifting of the editor when git signs gutter is the only gutter present */ /* Prevent shifting of the editor when git signs gutter is the only gutter present */
.cm-gutters.cm-gutters-before:has(> .git-signs-gutter:only-child) { .cm-gutters.cm-gutters-before:has(> .git-signs-gutter:only-child) {
margin-inline-end: 0; margin-inline-end: 0;
+11 -16
View File
@@ -6,11 +6,11 @@
"emojiStyle": "native", "emojiStyle": "native",
"iconColor": null, "iconColor": null,
"recentlyUsedIcons": [ "recentlyUsedIcons": [
"🏔", "LiToolCase",
"🦾", "LiLibrary",
"🖥", "LiCalendar",
"🤖", "LiNotebook",
"🧰" "LiLightbulb"
], ],
"recentlyUsedIconsSize": 5, "recentlyUsedIconsSize": 5,
"rules": [], "rules": [],
@@ -34,22 +34,16 @@
"debugMode": false, "debugMode": false,
"useInternalPlugins": false "useInternalPlugins": false
}, },
"00 Inbox": "📥", "99 System": "LiToolCase",
"99 System": "🖥",
"99 System/Template": "LiBookTemplate", "99 System/Template": "LiBookTemplate",
"99 System/Archive": "LiFolderArchive", "99 System/Archive": "LiFolderArchive",
"99 System/Cache": "LiArchive", "99 System/Cache": "LiArchive",
"02 Projects": "📔", "02 Projects": "LiNotebook",
"03 Journal": "📅", "03 Journal": "LiCalendar",
"04 Tools": "🧰",
"04 Tools/SocialBase": "🧑‍🤝‍🧑",
"02 Projects/Личные": "LiPersonStanding",
"02 Projects/Наука": "LiShieldQuestion", "02 Projects/Наука": "LiShieldQuestion",
"02 Projects/Учеба": "LiNotebookTabs", "02 Projects/Учеба": "LiNotebookTabs",
"04 Tools/StudyTracker": "📚",
"02 Projects/АО Ил": "LiPlane",
"01 Ideas": "LiLightbulb", "01 Ideas": "LiLightbulb",
"90 Library": "", "90 Library": "LiLibrary",
"90 Library/02 DevOps": "LiSpline", "90 Library/02 DevOps": "LiSpline",
"90 Library/04 Networking": "LiNetwork", "90 Library/04 Networking": "LiNetwork",
"90 Library/05 Operating System": "LiComputer", "90 Library/05 Operating System": "LiComputer",
@@ -73,5 +67,6 @@
"01 Library/09 Sport": "LiDumbbell", "01 Library/09 Sport": "LiDumbbell",
"01 Library/10 Finance": "LiCircleDollarSign", "01 Library/10 Finance": "LiCircleDollarSign",
"01 Library/07 HomeLab": "LiServer", "01 Library/07 HomeLab": "LiServer",
"01 Library/01 Admin": "🏔" "01 Library/01 Admin": "🏔",
"00 Inbox": "LiInbox"
} }
+13 -6
View File
@@ -70,16 +70,16 @@
"update-on-file-contents-updated": "after 10 seconds" "update-on-file-contents-updated": "after 10 seconds"
}, },
"yaml-title": { "yaml-title": {
"enabled": true, "enabled": false,
"title-key": "title", "title-key": "title",
"mode": "first-h1-or-filename-if-h1-missing" "mode": "first-h1-or-filename-if-h1-missing"
}, },
"yaml-title-alias": { "yaml-title-alias": {
"enabled": false, "enabled": false,
"preserve-existing-alias-section-style": true, "preserve-existing-alias-section-style": false,
"keep-alias-that-matches-the-filename": false, "keep-alias-that-matches-the-filename": false,
"use-yaml-key-to-keep-track-of-old-filename-or-heading": true, "use-yaml-key-to-keep-track-of-old-filename-or-heading": false,
"alias-helper-key": "linter-yaml-title-alias" "alias-helper-key": "aliases"
}, },
"capitalize-headings": { "capitalize-headings": {
"enabled": true, "enabled": true,
@@ -149,7 +149,7 @@
"enabled": true, "enabled": true,
"single-quote-enabled": true, "single-quote-enabled": true,
"single-quote-style": "''", "single-quote-style": "''",
"double-quote-enabled": true, "double-quote-enabled": false,
"double-quote-style": "\"\"" "double-quote-style": "\"\""
}, },
"remove-consecutive-list-markers": { "remove-consecutive-list-markers": {
@@ -278,10 +278,17 @@
"lintOnFileChange": false, "lintOnFileChange": false,
"displayLintOnFileChangeNotice": false, "displayLintOnFileChangeNotice": false,
"settingsConvertedToConfigKeyValues": true, "settingsConvertedToConfigKeyValues": true,
"additionalFileExtensions": [],
"foldersToIgnore": [ "foldersToIgnore": [
"99 System" "99 System"
], ],
"filesToIgnore": [], "filesToIgnore": [
{
"label": "Excalidraw",
"match": ".*\\.excalidraw(\\.md)?$",
"flags": "i"
}
],
"linterLocale": "system-default", "linterLocale": "system-default",
"logLevel": "ERROR", "logLevel": "ERROR",
"lintCommands": [], "lintCommands": [],
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -1,8 +1,8 @@
{ {
"id": "obsidian-linter", "id": "obsidian-linter",
"name": "Linter", "name": "Linter",
"version": "1.31.0", "version": "1.31.2",
"minAppVersion": "1.9.0", "minAppVersion": "1.12.0",
"description": "Formats and styles your notes. It can be used to format YAML tags, aliases, arrays, and metadata; footnotes; headings; spacing; math blocks; regular markdown contents like list, italics, and bold styles; and more with the use of custom rule options as well.", "description": "Formats and styles your notes. It can be used to format YAML tags, aliases, arrays, and metadata; footnotes; headings; spacing; math blocks; regular markdown contents like list, italics, and bold styles; and more with the use of custom rule options as well.",
"author": "Victor Tao", "author": "Victor Tao",
"authorUrl": "https://github.com/platers", "authorUrl": "https://github.com/platers",
+93 -2
View File
@@ -11,11 +11,102 @@
"Components@@new-tab-btn-select": "new-tab-btn-default", "Components@@new-tab-btn-select": "new-tab-btn-default",
"Components@@extra-anim-remove": true, "Components@@extra-anim-remove": true,
"Components@@setting-item-title-icon-remove": false, "Components@@setting-item-title-icon-remove": false,
"Components@@scrollbar-hide": false, "Components@@scrollbar-hide": true,
"Components@@restored-scrollbars": false, "Components@@restored-scrollbars": false,
"Components@@Ribbon-autohide": false, "Components@@Ribbon-autohide": false,
"Components@@status-bar-autohide": false, "Components@@status-bar-autohide": false,
"Components@@tab-autohide": false, "Components@@tab-autohide": false,
"Appearance-dark@@accent-color-override-dark": true, "Appearance-dark@@accent-color-override-dark": true,
"Appearance-dark@@theme-dark-style-select": "theme-dark-background-brighter" "Appearance-dark@@theme-dark-style-select": "theme-dark-background-default",
"blue-topaz-theme@@color-scheme-options": "color-scheme-options-chocolate-topaz",
"blue-topaz-theme@@left-ribbon-style": "hide-left-ribbon",
"blue-topaz-theme@@bt-status-on": false,
"blue-topaz-theme@@scrollbar-style-option": "hover-scrollbars",
"blue-topaz-theme@@search-bar-style-option": "bt-search-bar-bottom",
"obsidian-prism-theme@@color-schemes-dt": "pt-color-scheme-raven-dt",
"obsidian-prism-theme@@color-scheme-style-dt": "pt-color-scheme-style-minimal-dt",
"shiba-theme-settings@@shiba-colors-theme-dark": "default-dark-theme",
"shiba-theme-settings@@shiba-accent-colors": "accent-blue",
"shiba-theme-settings@@buttons-plugin-style": true,
"shiba-theme-settings@@buttons-workspace-style": true,
"shiba-theme-settings@@translucent-pane-style-settings": "shib-setting-default-frosted-glass",
"shiba-theme-settings@@shib-transparent-setting-panel": false,
"Plugin@@colorful-checkbox": true,
"anuppuccin-theme-settings@@anuppuccin-theme-dark": "ctp-mocha",
"anuppuccin-theme-settings@@anuppuccin-theme-accents": "ctp-accent-lavender",
"anuppuccin-theme-settings@@anp-active-line": "anp-current-line-border-only",
"anuppuccin-theme-settings@@anp-pdf-blend-toggle-dark": false,
"anuppuccin-theme-settings@@anp-alt-tab-style": "anp-alternate-tab-toggle",
"anuppuccin-theme-settings@@anp-disable-newtab-align": false,
"anuppuccin-theme-settings@@anp-depth-tab-text-invert": false,
"anuppuccin-theme-settings@@anp-safari-tab-animated": true,
"anuppuccin-theme-settings@@anp-bg-fix": false,
"anuppuccin-theme-settings@@anp-hide-borders": true,
"anuppuccin-theme-settings@@anp-card-shadows": true,
"anuppuccin-theme-settings@@anp-card-layout-actions": true,
"anuppuccin-theme-settings@@anp-card-layout-filebrowser": true,
"pln@@font-ui-smaller": 12,
"pln@@font-ui-small": 14,
"pln@@font-ui-medium": 14,
"pln@@font-ui-large": 14,
"pln@@pln-italics": false,
"pln@@pln-hi-line": true,
"pln@@pln-hi-line-hover": true,
"pln@@pln-hi-tr": true,
"pln@@pln-hide-files": true,
"pln@@pln-folder-icons": true,
"pln@@pln-view-invert": false,
"pln@@pln-tab-rows": true,
"pln@@pln-pretty-pinned": true,
"pln@@pln-pin-protect": true,
"pln@@pln-stacked-100": true,
"pln@@pln-attachments": false,
"pln@@pln-attachments-pdf": true,
"pln@@pln-attachments-images": true,
"pln@@pln-hdcl": true,
"anuppuccin-theme-settings@@anp-toggle-preview": true,
"anuppuccin-theme-settings@@anp-layout-select": "anp-card-layout",
"anuppuccin-theme-settings@@anp-toggle-metadata": true,
"anuppuccin-theme-settings@@anp-toggle-scrollbars": true,
"anuppuccin-theme-settings@@anp-hide-status-bar": false,
"anuppuccin-theme-settings@@anp-tooltip-toggle": true,
"anuppuccin-theme-settings@@anp-hide-external-link-icon": true,
"anuppuccin-theme-settings@@anp-cursor": "pointer",
"anuppuccin-theme-settings@@anp-autohide-titlebar": true,
"anuppuccin-theme-settings@@anp-print": true,
"anuppuccin-theme-settings@@anp-button-metadata-toggle": true,
"anuppuccin-theme-settings@@anp-color-transition-toggle": true,
"anuppuccin-theme-settings@@anp-header-color-toggle": true,
"anuppuccin-theme-settings@@anp-header-margin-toggle": false,
"anuppuccin-theme-settings@@anp-header-divider-color-toggle": false,
"anuppuccin-theme-settings@@anp-decoration-toggle": true,
"anuppuccin-theme-settings@@anp-table-toggle": true,
"anuppuccin-theme-settings@@anp-table-width": true,
"anuppuccin-theme-settings@@anp-table-auto": true,
"anuppuccin-theme-settings@@anp-list-toggle": true,
"anuppuccin-theme-settings@@anp-codeblock-numbers": true,
"anuppuccin-theme-settings@@anp-custom-checkboxes": true,
"anuppuccin-theme-settings@@anp-speech-bubble": true,
"anuppuccin-theme-settings@@anp-latex-inline-color": "anp-latex-inline-sapphire",
"anuppuccin-theme-settings@@anp-latex-block-color": "anp-latex-block-sapphire",
"anuppuccin-theme-settings@@anp-colorful-frame": false,
"anuppuccin-theme-settings@@anp-colorful-frame-icon-toggle-light": false,
"anuppuccin-theme-settings@@anp-colorful-frame-icon-toggle-dark": true,
"anuppuccin-theme-settings@@anp-custom-vault-toggle": true,
"anuppuccin-theme-settings@@anp-file-icons": true,
"anuppuccin-theme-settings@@anp-floating-header": true,
"anuppuccin-theme-settings@@anp-collapse-folders": true,
"anuppuccin-theme-settings@@anp-alt-rainbow-style": "anp-simple-rainbow-color-toggle",
"anuppuccin-theme-settings@@anp-simple-rainbow-title-toggle": false,
"anuppuccin-theme-settings@@anp-simple-rainbow-collapse-icon-toggle": true,
"anuppuccin-theme-settings@@anp-simple-rainbow-indentation-toggle": true,
"anuppuccin-theme-settings@@anp-simple-rainbow-icon-toggle": false,
"anuppuccin-theme-settings@@anp-rainbow-subfolder-color-toggle": false,
"anuppuccin-theme-settings@@bold-weight": "bolder",
"anuppuccin-theme-settings@@anp-status-bar-select": "anp-floating-status-bar",
"anuppuccin-theme-settings@@anp-translucency-opacity": 0.5,
"anuppuccin-theme-settings@@anp-editor-font-source": "Inter",
"anuppuccin-theme-settings@@anp-editor-font-lp": "Inter",
"anuppuccin-theme-settings@@anp-editor-font-rv": "Inter",
"anuppuccin-theme-settings@@file-line-width": 900
} }
-22
View File
@@ -1,22 +0,0 @@
{
"timestamps": false,
"timestampFormat": "auto",
"timestampInterval": "0",
"translate": false,
"language": "auto",
"verbosity": 1,
"whisperASRUrls": "http://localhost:9000",
"debug": false,
"transcriptionEngine": "whisper_asr",
"embedAdditionalFunctionality": true,
"embedSummary": true,
"embedOutline": true,
"embedKeywords": true,
"swiftink_access_token": null,
"swiftink_refresh_token": null,
"lineSpacing": "multi",
"encode": true,
"initialPrompt": "",
"vadFilter": false,
"wordTimestamps": false
}
File diff suppressed because it is too large Load Diff
-10
View File
@@ -1,10 +0,0 @@
{
"id": "obsidian-transcription",
"name": "Transcription",
"version": "3.4.0",
"minAppVersion": "0.15.0",
"description": "Transcription 3.0, now with Swiftink.io domain-aware speech-to-text! Create high-quality text transcriptions from any media file, on any device. Best-in-class ASR",
"author": "djmango",
"authorUrl": "https://github.com/djmango",
"isDesktopOnly": false
}
+1
View File
@@ -6,6 +6,7 @@
"ignoreDiacritics": true, "ignoreDiacritics": true,
"ignoreArabicDiacritics": false, "ignoreArabicDiacritics": false,
"indexedFileTypes": [], "indexedFileTypes": [],
"indexFilesWithoutExtension": false,
"displayTitle": "", "displayTitle": "",
"PDFIndexing": false, "PDFIndexing": false,
"officeIndexing": false, "officeIndexing": false,
+142 -143
View File
File diff suppressed because one or more lines are too long
+3 -3
View File
@@ -1,11 +1,11 @@
{ {
"id": "omnisearch", "id": "omnisearch",
"name": "Omnisearch", "name": "Omnisearch",
"version": "1.28.0", "version": "1.29.3",
"minAppVersion": "1.7.2", "minAppVersion": "1.7.2",
"description": "A search engine that just works", "description": "A search engine that just works.",
"author": "Simon Cambier", "author": "Simon Cambier",
"authorUrl": "https://github.com/scambier/obsidian-omnisearch", "authorUrl": "https://scambier.xyz",
"fundingUrl": { "fundingUrl": {
"Github": "https://github.com/sponsors/scambier", "Github": "https://github.com/sponsors/scambier",
"Ko-fi": "https://ko-fi.com/scambier" "Ko-fi": "https://ko-fi.com/scambier"
+16 -1
View File
@@ -63,7 +63,6 @@
margin-left: 1em; margin-left: 1em;
} }
.omnisearch-result__image-container { .omnisearch-result__image-container {
flex-basis: 20%; flex-basis: 20%;
text-align: end; text-align: end;
@@ -133,3 +132,19 @@
position: relative; position: relative;
flex-grow: 1; flex-grow: 1;
} }
.omnisearch-result-highlight .cm-content ::selection,
.omnisearch-result-highlight .cm-line::selection {
background-color: var(
--omnisearch-highlight-color,
rgba(222, 183, 110, 1)
) !important;
color: var(--omnisearch-highlight-text-color, black) !important;
}
.omnisearch-result-highlight .cm-selectionLayer .cm-selectionBackground {
background-color: var(
--omnisearch-highlight-color,
rgba(222, 183, 110, 1)
) !important;
}
File diff suppressed because one or more lines are too long
+9 -3
View File
@@ -1,11 +1,17 @@
{ {
"id": "templater-obsidian", "id": "templater-obsidian",
"name": "Templater", "name": "Templater",
"version": "2.17.0", "version": "2.20.5",
"description": "Create and use templates", "description": "Advanced templating and automation using handlebars-like syntax.",
"minAppVersion": "1.5.0", "minAppVersion": "1.12.2",
"author": "SilentVoid", "author": "SilentVoid",
"authorUrl": "https://github.com/SilentVoid13", "authorUrl": "https://github.com/SilentVoid13",
"fundingUrl": {
"GitHub Sponser (Zachatoo, maintainer)": "https://github.com/sponsors/Zachatoo",
"Ko-fi (Zachatoo, maintainer)": "https://ko-fi.com/zachatoo",
"GitHub Sponser (SilentVoid13, creator)": "https://github.com/sponsors/SilentVoid13",
"Paypal (SilentVoid13, creator)": "https://www.paypal.com/donate?hosted_button_id=U2SRGAFYXT32Q"
},
"helpUrl": "https://silentvoid13.github.io/Templater/", "helpUrl": "https://silentvoid13.github.io/Templater/",
"isDesktopOnly": false "isDesktopOnly": false
} }
+1 -1
View File
@@ -221,6 +221,6 @@ textarea.templater-prompt-input:focus {
} }
li.CodeMirror-hint-active { li.CodeMirror-hint-active {
background: #08f; background: #0088ff;
color: white; color: white;
} }
+128 -2
View File
@@ -6,7 +6,130 @@
"exposeInternalModules": true, "exposeInternalModules": true,
"focusOnNewInstance": true, "focusOnNewInstance": true,
"hideStatusBar": "focused", "hideStatusBar": "focused",
"interceptKeysWhenFocused": true,
"interceptLogging": true, "interceptLogging": true,
"keymappings": [
{
"action": "sendEscapeSequence",
"actionArg": "\r",
"alt": false,
"ctrl": false,
"key": "Enter",
"meta": false,
"platform": null,
"shift": true
},
{
"action": "scrollPages",
"actionArg": -1,
"alt": false,
"ctrl": false,
"key": "PageUp",
"meta": false,
"platform": null,
"shift": false
},
{
"action": "scrollPages",
"actionArg": 1,
"alt": false,
"ctrl": false,
"key": "PageDown",
"meta": false,
"platform": null,
"shift": false
},
{
"action": "scrollToTop",
"actionArg": null,
"alt": false,
"ctrl": false,
"key": "Home",
"meta": false,
"platform": null,
"shift": false
},
{
"action": "scrollToBottom",
"actionArg": null,
"alt": false,
"ctrl": false,
"key": "End",
"meta": false,
"platform": null,
"shift": false
},
{
"action": "sendEscapeSequence",
"actionArg": "b",
"alt": true,
"ctrl": false,
"key": "ArrowLeft",
"meta": false,
"platform": "darwin",
"shift": false
},
{
"action": "sendEscapeSequence",
"actionArg": "f",
"alt": true,
"ctrl": false,
"key": "ArrowRight",
"meta": false,
"platform": "darwin",
"shift": false
},
{
"action": "sendHexCode",
"actionArg": "01",
"alt": false,
"ctrl": false,
"key": "ArrowLeft",
"meta": true,
"platform": "darwin",
"shift": false
},
{
"action": "sendHexCode",
"actionArg": "05",
"alt": false,
"ctrl": false,
"key": "ArrowRight",
"meta": true,
"platform": "darwin",
"shift": false
},
{
"action": "sendHexCode",
"actionArg": "17",
"alt": true,
"ctrl": false,
"key": "Backspace",
"meta": false,
"platform": "darwin",
"shift": false
},
{
"action": "sendHexCode",
"actionArg": "15",
"alt": false,
"ctrl": false,
"key": "Backspace",
"meta": true,
"platform": "darwin",
"shift": false
},
{
"action": "sendEscapeSequence",
"actionArg": "d",
"alt": true,
"ctrl": false,
"key": "Delete",
"meta": false,
"platform": "darwin",
"shift": false
}
],
"language": "", "language": "",
"macOSOptionKeyPassthrough": true, "macOSOptionKeyPassthrough": true,
"newInstanceBehavior": "newHorizontalSplit", "newInstanceBehavior": "newHorizontalSplit",
@@ -32,6 +155,7 @@
}, },
"linuxExternalDefault": { "linuxExternalDefault": {
"args": [], "args": [],
"environment": [],
"executable": "xterm", "executable": "xterm",
"followTheme": true, "followTheme": true,
"name": "", "name": "",
@@ -52,6 +176,7 @@
}, },
"linuxIntegratedDefault": { "linuxIntegratedDefault": {
"args": [], "args": [],
"environment": [],
"executable": "/bin/sh", "executable": "/bin/sh",
"followTheme": true, "followTheme": true,
"name": "", "name": "",
@@ -76,6 +201,7 @@
"args": [ "args": [
"--login" "--login"
], ],
"environment": [],
"executable": "/usr/bin/zsh", "executable": "/usr/bin/zsh",
"followTheme": true, "followTheme": true,
"name": "ZSH", "name": "ZSH",
@@ -92,8 +218,8 @@
"SIGTERM" "SIGTERM"
], ],
"terminalOptions": { "terminalOptions": {
"documentOverride": null, "fontFamily": "FiraCode Nerd Font Mono",
"fontFamily": "FiraCode Nerd Font Mono" "documentOverride": null
}, },
"type": "integrated", "type": "integrated",
"useWin32Conhost": false "useWin32Conhost": false
+152 -186
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -5,7 +5,7 @@
"Buy Me a Coffee": "https://buymeacoffee.com/polyipseity", "Buy Me a Coffee": "https://buymeacoffee.com/polyipseity",
"GitHub Sponsors": "https://github.com/sponsors/polyipseity" "GitHub Sponsors": "https://github.com/sponsors/polyipseity"
}, },
"version": "3.24.0", "version": "3.26.0",
"authorUrl": "https://github.com/polyipseity", "authorUrl": "https://github.com/polyipseity",
"id": "terminal", "id": "terminal",
"isDesktopOnly": false, "isDesktopOnly": false,
@@ -1 +0,0 @@
{}
+42 -9
View File
@@ -1,36 +1,69 @@
{ {
"version": null, "general": {
"version": "1.4.0",
"isAnnounceUpdatesEnabled": true, "isAnnounceUpdatesEnabled": true,
"isPluginActivated": true, "isPluginActivated": true,
"isTypewriterScrollEnabled": true,
"isOnlyActivateAfterFirstInteractionEnabled": true, "isOnlyActivateAfterFirstInteractionEnabled": true,
"enabledPlatforms": "both",
"enabledFilePaths": [],
"disabledFilePaths": []
},
"typewriter": {
"isTypewriterScrollEnabled": true,
"isOnlyMaintainTypewriterOffsetWhenReachedEnabled": true, "isOnlyMaintainTypewriterOffsetWhenReachedEnabled": true,
"isTypewriterOnlyUseCommandsEnabled": false, "isTypewriterOnlyUseCommandsEnabled": false,
"typewriterOffset": 0.5, "typewriterOffset": 0.5
},
"keepLinesAboveAndBelow": {
"isKeepLinesAboveAndBelowEnabled": false, "isKeepLinesAboveAndBelowEnabled": false,
"linesAboveAndBelow": 5, "linesAboveAndBelow": 5
},
"maxChars": {
"isMaxCharsPerLineEnabled": false, "isMaxCharsPerLineEnabled": false,
"maxCharsPerLine": 64, "maxCharsPerLine": 64
},
"dimming": {
"isDimUnfocusedEnabled": false, "isDimUnfocusedEnabled": false,
"isDimUnfocusedOnlyInWritingFocusModeEnabled": false,
"isDimHighlightListParentEnabled": false, "isDimHighlightListParentEnabled": false,
"isDimTableAsOneEnabled": true, "isDimTableAsOneEnabled": true,
"dimUnfocusedMode": "paragraphs", "dimUnfocusedMode": "paragraphs",
"dimUnfocusedEditorsBehavior": "dim", "dimUnfocusedEditorsBehavior": "dim",
"dimmedOpacity": 0.25, "dimmedOpacity": 0.25,
"isPauseDimUnfocusedWhileScrollingEnabled": true, "isPauseDimUnfocusedWhileScrollingEnabled": true,
"isPauseDimUnfocusedWhileSelectingEnabled": true, "isPauseDimUnfocusedWhileSelectingEnabled": true
},
"currentLine": {
"isHighlightCurrentLineEnabled": false, "isHighlightCurrentLineEnabled": false,
"isHighlightCurrentLineOnlyInWritingFocusModeEnabled": false,
"isFadeLinesEnabled": false, "isFadeLinesEnabled": false,
"isFadeLinesOnlyInWritingFocusModeEnabled": false,
"fadeLinesIntensity": 0.5, "fadeLinesIntensity": 0.5,
"isHighlightCurrentLineOnlyInFocusedEditorEnabled": false, "isHighlightCurrentLineOnlyInFocusedEditorEnabled": false,
"isPauseCurrentLineHighlightWhileScrollingEnabled": false,
"isPauseCurrentLineHighlightWhileSelectingEnabled": false,
"currentLineHighlightStyle": "box", "currentLineHighlightStyle": "box",
"currentLineHighlightUnderlineThickness": 1, "currentLineHighlightUnderlineThickness": 1,
"currentLineHighlightColor-dark": "#444", "currentLineHighlightColor-dark": "#444",
"currentLineHighlightColor-light": "#ddd", "currentLineHighlightColor-light": "#ddd"
},
"writingFocus": {
"doesWritingFocusShowHeader": false, "doesWritingFocusShowHeader": false,
"doesWritingFocusShowStatusBar": false,
"doesWritingFocusShowVignette": true, "doesWritingFocusShowVignette": true,
"doesWritingFocusShowStatusBar": false,
"isWritingFocusFullscreen": true, "isWritingFocusFullscreen": true,
"writingFocusVignetteStyle": "box", "writingFocusVignetteStyle": "box",
"isRestoreCursorPositionEnabled": false "writingFocusFontSize": 0
},
"restoreCursorPosition": {
"isRestoreCursorPositionEnabled": false,
"cursorPositions": {}
},
"hemingwayMode": {
"isHemingwayModeEnabled": false,
"isHemingwayModeOnlyInWritingFocusModeEnabled": false,
"isAllowBackspaceInHemingwayModeEnabled": false,
"isShowHemingwayModeStatusBarEnabled": true,
"hemingwayModeStatusBarText": "Hemingway"
}
} }
File diff suppressed because one or more lines are too long
+2 -2
View File
@@ -5,8 +5,8 @@
"authorUrl": "https://davis-riedel.de/en/software", "authorUrl": "https://davis-riedel.de/en/software",
"description": "Typewriter scroll, highlight current line, dim unfocused paragraphs and sentences, writing focus, restore cursor position and more.", "description": "Typewriter scroll, highlight current line, dim unfocused paragraphs and sentences, writing focus, restore cursor position and more.",
"isDesktopOnly": false, "isDesktopOnly": false,
"version": "1.1.0", "version": "1.4.0",
"minAppVersion": "0.15.0", "minAppVersion": "1.11.0",
"fundingUrl": { "fundingUrl": {
"Buy Me a Coffee": "https://www.buymeacoffee.com/davis.riedel", "Buy Me a Coffee": "https://www.buymeacoffee.com/davis.riedel",
"GitHub Sponsors": "https://github.com/sponsors/davisriedel" "GitHub Sponsors": "https://github.com/sponsors/davisriedel"
File diff suppressed because one or more lines are too long
-19
View File
@@ -1,19 +0,0 @@
{
"waypointFlag": "%% Waypoint %%",
"landmarkFlag": "%% Landmark %%",
"stopScanAtFolderNotes": false,
"showFolderNotes": false,
"showNonMarkdownFiles": false,
"foldersOnTop": true,
"debugLogging": false,
"useWikiLinks": true,
"useFrontMatterTitle": false,
"showEnclosingNote": false,
"folderNoteType": "INSIDE_FOLDER",
"folderNoteFilename": "index",
"ignorePaths": [
"_attachments, Cache"
],
"useSpaces": false,
"numSpaces": 2
}
File diff suppressed because one or more lines are too long
-10
View File
@@ -1,10 +0,0 @@
{
"id": "waypoint",
"name": "Waypoint",
"version": "3.0.1",
"minAppVersion": "0.12.0",
"description": "Easily generate dynamic content maps in your folder notes using waypoints. Enables folders to show up in the graph view and removes the need for messy tags!",
"author": "Idrees Hassan",
"authorUrl": "https://idreesinc.com",
"isDesktopOnly": false
}
-1
View File
@@ -1 +0,0 @@
-211
View File
@@ -1,211 +0,0 @@
{
"packagesHash": {
"default": {
"packageId": "default",
"name": "Default Prompts Package",
"version": "0.0.9",
"minTextGeneratorVersion": "0.5.0",
"description": "This is the main package that comes with Text Generator plugin in Obsidian",
"author": "Noureddine Haouari",
"tags": "writing, brainstorming",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/gpt-3-prompt-templates"
},
"dalle": {
"packageId": "dalle",
"name": "OpenAI Dalle Package",
"version": "0.1.1",
"minTextGeneratorVersion": "0.7.0",
"description": "The package contains some interessting Dalle-2/Dalle-3 prompt templates",
"author": "Noureddine Haouari",
"tags": "photo, dalle-2, dalle-3",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/tg-dalle-package"
},
"huggingface": {
"packageId": "huggingface",
"name": "Huggingface Prompts Package",
"version": "0.0.4",
"minTextGeneratorVersion": "0.5.0",
"description": "Huggingface Prompts comes with Text Generator plugin in Obsidian",
"author": "Noureddine Haouari",
"tags": "writing, brainstorming, huggingface",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/huggingface"
},
"awesomePrompts": {
"packageId": "awesomePrompts",
"name": "Awesome Prompts",
"version": "0.0.3",
"minTextGeneratorVersion": "0.5.7",
"description": "This repo includes ChatGPT prompt curation to use ChatGPT better.",
"author": "f",
"tags": "writing, brainstorming, awesome",
"authorUrl": "https://github.com/f/awesome-chatgpt-prompts",
"repo": "text-gen/awesome-tg-package"
},
"tts": {
"packageId": "tts",
"name": "Text To Speech Package",
"version": "0.0.3",
"minTextGeneratorVersion": "0.6.0",
"description": "Contains Text To Speech Templates and support for TTS for other templates",
"author": "Noureddine",
"tags": "TTS, Speak",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/TTS"
},
"vision": {
"packageId": "vision",
"name": "Vision Package",
"version": "0.0.2",
"minTextGeneratorVersion": "0.6.0",
"description": "Contains Vision Templates and support for Vision for other templates (Scripts)",
"author": "Noureddine",
"tags": "OpenAI,markdown,gpt-4-vision,vision,images",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/tg-vision"
},
"smartConnections": {
"packageId": "smartConnections",
"name": "Smart Connections Package",
"version": "0.0.2",
"minTextGeneratorVersion": "0.6.0",
"description": "Contains Smart Connection Templates and support for Smart Connections for other templates (Script)",
"author": "Noureddine",
"tags": "smartConnections,smart-connections",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/tg-smartConnections"
},
"Experimental": {
"packageId": "Experimental",
"name": "Experimental Package",
"version": "0.0.2",
"minTextGeneratorVersion": "0.6.6",
"description": "Contains experimental templates",
"author": "Noureddine",
"tags": "experiments",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/experimental-package"
},
"testExtension": {
"core": true,
"type": "feature",
"packageId": "testExtension",
"name": "test extension Package",
"version": "0.0.1",
"minTextGeneratorVersion": "0.1.0",
"description": "testing extension package",
"author": "Noureddine Haouari",
"tags": "testing",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/gpt-3-prompt-templates",
"folderName": "testExtension",
"price": 20,
"installed": false
},
"excalidraw": {
"packageId": "excalidraw",
"name": "excalidraw package",
"version": "0.0.1",
"minTextGeneratorVersion": "0.6.0",
"description": "Contains Excalidraw Templates and support for Excalidraw for other templates (Scripts)",
"author": "Noureddine",
"tags": "OpenAI,markdown,gpt-4-vision,vision,images",
"authorUrl": "https://www.buymeacoffee.com/haouarine",
"repo": "text-gen/tg-excalidraw",
"core": true,
"folderName": "excalidrawPackage",
"price": 2
}
},
"resources": {},
"installedPackagesHash": {
"default": {
"packageId": "default",
"prompts": [
{
"promptId": "getEmailNeg"
},
{
"promptId": "getEmailPos"
},
{
"promptId": "getIdeas"
},
{
"promptId": "getOutline"
},
{
"promptId": "getParagraph"
},
{
"promptId": "getTags"
},
{
"promptId": "getTitles"
},
{
"promptId": "rewrite"
},
{
"promptId": "simplify"
},
{
"promptId": "summarize"
},
{
"promptId": "summarizeLarge"
}
],
"installedPrompts": [
{
"promptId": "rewrite",
"version": ""
},
{
"promptId": "getTags",
"version": ""
},
{
"promptId": "summarize",
"version": ""
},
{
"promptId": "getEmailNeg",
"version": ""
},
{
"promptId": "getParagraph",
"version": ""
},
{
"promptId": "getOutline",
"version": ""
},
{
"promptId": "getTitles",
"version": ""
},
{
"promptId": "getIdeas",
"version": ""
},
{
"promptId": "summarizeLarge",
"version": ""
},
{
"promptId": "simplify",
"version": ""
},
{
"promptId": "getEmailPos",
"version": ""
}
],
"version": "0.0.5"
}
},
"subscriptions": []
}
+7
View File
@@ -0,0 +1,7 @@
{
"name": "AnuPpuccin",
"version": "1.5.0",
"minAppVersion": "1.6.0",
"author": "Anubis",
"authorUrl": "https://github.com/AnubisNekhet"
}
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "Border", "name": "Border",
"version": "1.13.5", "version": "1.13.7",
"minAppVersion": "0.16.0", "minAppVersion": "0.16.0",
"author": "Akifyss", "author": "Akifyss",
"authorUrl": "https://github.com/Akifyss" "authorUrl": "https://github.com/Akifyss"
+7 -39
View File
@@ -4872,7 +4872,7 @@ body:not(.restored-scrollbars) .kanban-plugin__scroll-container::-webkit-scrollb
background-clip: padding-box; background-clip: padding-box;
border-radius: 20px; border-radius: 20px;
border: 3px solid transparent; border: 3px solid transparent;
border-width: 3px 3px 3px 3px; border-width: 3px;
min-height: 45px min-height: 45px
} }
@@ -4925,7 +4925,7 @@ body:not(.is-translucent) .titlebar-text {
color: var(--text-on-accent) !important; color: var(--text-on-accent) !important;
} }
.is-hidden-frameless .titlebar-button-container.mod-right .titlebar-button { .is-hidden-frameless .titlebar:not(:has(+.modal)) .titlebar-button-container.mod-right .titlebar-button {
height: 44px; height: 44px;
width: 44px; width: 44px;
padding: 0; padding: 0;
@@ -4939,7 +4939,7 @@ body:not(.is-translucent) .titlebar-text {
margin-right: 0px; margin-right: 0px;
} }
.is-hidden-frameless .titlebar-button-container.mod-right { .is-hidden-frameless .titlebar:not(:has(+.modal)) .titlebar-button-container.mod-right {
height: 44px; height: 44px;
} }
@@ -5507,7 +5507,7 @@ body:not(.is-mobile).tab-title-bar-autohide.nav-header-autohide .mod-root .works
body:not(.is-mobile).nav-header-autohide :is(.workspace-leaf-content, .view-content)>.nav-header .search-input-container { body:not(.is-mobile).nav-header-autohide :is(.workspace-leaf-content, .view-content)>.nav-header .search-input-container {
height: 0px; height: 0px;
opacity: 0; opacity: 0;
margin: 0px auto 0px; margin: 0px auto;
transition: height var(--anim-out), opacity var(--anim-out), margin var(--anim-out); transition: height var(--anim-out), opacity var(--anim-out), margin var(--anim-out);
} }
@@ -5675,11 +5675,11 @@ body:not(.restored-scrollbars) .mod-stacked ::-webkit-scrollbar-track {
/* embedded backlinks */ /* embedded backlinks */
body:not(.is-mobile) .embedded-backlinks .nav-header~.search-input-container { body:not(.is-mobile) .embedded-backlinks .nav-header~.search-input-container {
margin: 15px 0 0 0; margin: 15px 0 0;
} }
.is-mobile .embedded-backlinks .nav-header~.search-input-container { .is-mobile .embedded-backlinks .nav-header~.search-input-container {
margin: 10px 0 0 0; margin: 10px 0 0;
} }
/* document search replace */ /* document search replace */
@@ -6530,25 +6530,6 @@ body {
--background-modifier-form-field: transparent; --background-modifier-form-field: transparent;
} }
body:not(.is-mobile) .modal.mod-settings .vertical-tab-header{
border-inline-end: 0;
padding: var(--size-4-2) calc(var(--size-4-2) + var(--size-4-2)) var(--size-4-2) var(--size-4-2);
}
body:not(.is-mobile) .modal.mod-settings{
padding: var(--size-4-2);
background-color: var(--background-secondary);
}
body:not(.is-mobile) .modal.mod-settings .vertical-tab-content {
border-radius: var(--size-4-2);
}
body:not(.is-mobile) .modal-close-button{
top: var(--size-4-4);
right: var(--size-4-4);
}
.settings-search-container.vertical-tab-header-group { .settings-search-container.vertical-tab-header-group {
padding-top: 2px; padding-top: 2px;
} }
@@ -6597,7 +6578,7 @@ body:not(.is-phone) .vertical-tab-nav-item.is-active {
} }
/* ====== UI Components====== */ /* ====== UI Components====== */
body{ body {
--input-height: 32px; --input-height: 32px;
--input-radius: 6px; --input-radius: 6px;
} }
@@ -8679,19 +8660,6 @@ body {
} }
/* image hover effect */ /* image hover effect */
.markdown-source-view.mod-cm6 .cm-content>.image-embed {
contain: unset !important;
}
@media (hover: hover) {
.workspace-leaf-content[data-type="markdown"] .markdown-source-view .cm-content>img:hover,
.workspace-leaf-content[data-type="markdown"] .view-content .cm-content .image-embed img:hover {
outline-offset: 2px;
outline: 2px solid var(--background-modifier-border-hover);
border-radius: var(--radius-s);
}
}
.theme-dark.img-darken .markdown-preview-view img, .theme-dark.img-darken .markdown-preview-view img,
.theme-dark.img-darken .markdown-source-view img { .theme-dark.img-darken .markdown-source-view img {
-7
View File
@@ -1,7 +0,0 @@
{
"name": "Obsidian Nord",
"version": "0.2.0",
"minAppVersion": "0.16.0",
"author": "insanum",
"authorUrl": "https://insanum.com"
}
-525
View File
@@ -1,525 +0,0 @@
:root
{
--dark0_x: 46,52,64; /* #2e3440 */
--dark0: rgb(var(--dark0_x));
--dark1_x: 59,66,82; /* #3b4252 */
--dark1: rgb(var(--dark1_x));
--dark2_x: 67,76,94; /* #434c5e */
--dark2: rgb(var(--dark2_x));
--dark3_x: 76,86,106; /* #4c566a */
--dark3: rgb(var(--dark3_x));
--light0_x: 216,222,233; /* #d8dee9 */
--light0: rgb(var(--light0_x));
--light1_x: 229,233,240; /* #e5e9f0 */
--light1: rgb(var(--light1_x));
--light2_x: 236,239,244; /* #eceff4 */
--light2: rgb(var(--light2_x));
--light3_x: 255,255,255; /* #ffffff */
--light3: rgb(var(--light3_x));
--frost0_x: 143,188,187; /* #8fbcbb */
--frost0: rgb(var(--frost0_x));
--frost1_x: 136,192,208; /* #88c0d0 */
--frost1: rgb(var(--frost1_x));
--frost2_x: 129,161,193; /* #81a1c1 */
--frost2: rgb(var(--frost2_x));
--frost3_x: 94,129,172; /* #5e81ac */
--frost3: rgb(var(--frost3_x));
--red_x: 191,97,106; /* #bf616a */
--red: rgb(var(--red_x));
--orange_x: 208,135,112; /* #d08770 */
--orange: rgb(var(--orange_x));
--yellow_x: 235,203,139; /* #ebcb8b */
--yellow: rgb(var(--yellow_x));
--green_x: 163,190,140; /* #a3be8c */
--green: rgb(var(--green_x));
--purple_x: 180,142,173; /* #b48ead */
--purple: rgb(var(--purple_x));
}
body
{
--accent-h: 354; /* --red #bf616a */
--accent-s: 42%;
--accent-l: 56%;
--link-decoration: none;
--link-decoration-hover: none;
--link-external-decoration: none;
--link-external-decoration-hover: none;
--tag-decoration: none;
--tag-decoration-hover: underline;
--tag-padding-x: .5em;
--tag-padding-y: .2em;
--tag-radius: .5em;
--tab-font-weight: 600;
--bold-weight: 600;
--checkbox-radius: 0;
/* --list-indent: 2em; */
--embed-border-left: 6px double var(--interactive-accent);
}
.theme-dark
{
--color-red-rgb: var(--red_x);
--color-red: var(--red);
--color-purple-rgb: var(--purple_x);
--color-purple: var(--purple);
--color-green-rgb: var(--green_x);
--color-green: var(--green);
--color-cyan-rgb: var(--frost1_x);
--color-cyan: var(--frost1);
--color-blue-rgb: var(--frost3_x);
--color-blue: var(--frost3);
--color-yellow-rgb: var(--yellow_x);
--color-yellow: var(--yellow);
--color-orange-rgb: var(--orange_x);
--color-orange: var(--orange);
/* --color-pink: var(--purple); */
--background-primary: var(--dark0);
--background-primary-alt: var(--dark0);
--background-secondary: var(--dark1);
--background-secondary-alt: var(--dark2);
--background-modifier-border: var(--dark2);
--cursor-line-background: rgba(var(--red_x), 0.2);
--text-normal: var(--light2);
--text-faint: var(--light0);
--text-muted: var(--light1);
--link-url: var(--purple);
--h1-color: var(--red);
--h2-color: var(--yellow);
--h3-color: var(--green);
--h4-color: var(--purple);
--h5-color: var(--frost0);
--h6-color: var(--frost2);
--text-highlight-bg: var(--frost1);
--text-highlight-fg: var(--dark0);
--text-accent: var(--orange);
--text-accent-hover: var(--frost2);
--tag-color: var(--frost0);
--tag-background: var(--dark2);
--tag-background-hover: var(--dark1);
--titlebar-text-color-focused: var(--red);
--inline-title-color: var(--yellow);
--bold-color: var(--yellow);
--italic-color: var(--yellow);
--checkbox-color: var(--frost0);
--checkbox-color-hover: var(--frost0);
--checkbox-border-color: var(--frost0);
--checkbox-border-color-hover: var(--frost0);
--checklist-done-color: rgba(var(--light2_x), 0.5);
--table-header-background: hsl(220, 16%, 16%);
--table-header-background-hover: var(--dark3);
--table-row-even-background: hsl(220, 16%, 20%);
--table-row-odd-background: hsl(220, 16%, 24%);
--table-row-background-hover: var(--dark3);
--text-selection: rgba(var(--red_x), 0.6);
--flashing-background: rgba(var(--red_x), 0.3);
--code-normal: var(--frost1);
--code-background: var(--dark1);
--mermaid-note: var(--frost3);
--mermaid-loopline: var(--frost1);
--mermaid-exclude: var(--dark3);
--mermaid-seqnum: var(--dark0);
--icon-color-hover: var(--red);
--icon-color-focused: var(--frost2);
--nav-item-color-hover: var(--red);
--nav-item-color-active: var(--frost2);
--nav-file-tag: rgba(var(--yellow_x), 0.9);
--graph-line: var(--dark3);
--graph-node: var(--light3);
--graph-node-tag: var(--red);
--graph-node-attachment: var(--green);
--calendar-hover: var(--red);
--calendar-background-hover: var(--dark3);
--calendar-week: var(--yellow);
--calendar-today: var(--yellow);
--dataview-key: var(--text-faint);
--dataview-key-background: rgba(var(--frost2_x), 0.3);
--dataview-value: var(--text-faint);
--dataview-value-background: rgba(var(--red_x), 0.3);
--tab-text-color-focused-active: var(--frost2);
--tab-text-color-focused-active-current: var(--red);
}
.theme-light
{
--color-red-rgb: var(--red_x);
--color-red: var(--red);
--color-purple-rgb: var(--purple_x);
--color-purple: var(--purple);
--color-green-rgb: var(--green_x);
--color-green: var(--green);
--color-cyan-rgb: var(--frost1_x);
--color-cyan: var(--frost1);
--color-blue-rgb: var(--frost3_x);
--color-blue: var(--frost3);
--color-yellow-rgb: var(--yellow_x);
--color-yellow: var(--yellow);
--color-orange-rgb: var(--orange_x);
--color-orange: var(--orange);
/* --color-pink: var(--purple); */
--background-primary: var(--light3);
--background-primary-alt: var(--light3);
--background-secondary: var(--light2);
--background-secondary-alt: var(--light1);
--background-modifier-border: var(--light1);
--cursor-line-background: rgba(var(--red_x), 0.1);
--text-normal: var(--dark2);
--text-faint: var(--dark0);
--text-muted: var(--dark1);
--link-url: var(--purple);
--h1-color: var(--red);
--h2-color: var(--yellow);
--h3-color: var(--green);
--h4-color: var(--purple);
--h5-color: var(--frost0);
--h6-color: var(--frost2);
--text-highlight-bg: var(--yellow);
--text-highlight-fg: var(--dark0);
--text-accent: var(--orange);
--text-accent-hover: var(--frost2);
--tag-color: var(--dark3);
--tag-background: var(--light1);
--tag-background-hover: var(--light0);
--titlebar-text-color-focused: var(--red);
--inline-title-color: var(--yellow);
--bold-color: var(--green);
--italic-color: var(--green);
--checkbox-color: var(--frost2);
--checkbox-color-hover: var(--frost2);
--checkbox-border-color: var(--frost2);
--checkbox-border-color-hover: var(--frost2);
--checklist-done-color: rgba(var(--dark2_x), 0.4);
--table-header-background: rgba(var(--light2_x), 0.2);
--table-header-background-hover: var(--frost2);
--table-row-even-background: rgba(var(--light2_x), 0.4);
--table-row-odd-background: rgba(var(--light2_x), 0.8);
--table-row-background-hover: var(--frost2);
--text-selection: rgba(var(--red_x), 0.6);
--flashing-background: rgba(var(--red_x), 0.3);
--code-normal: var(--frost1);
--code-background: var(--light2);
--mermaid-note: var(--frost0);
--mermaid-loopline: var(--frost1);
--mermaid-exclude: var(--light0);
--mermaid-seqnum: var(--light0);
--icon-color-hover: var(--red);
--icon-color-focused: var(--frost3);
--nav-item-color-hover: var(--red);
--nav-item-color-active: var(--frost2);
--nav-file-tag: rgba(var(--orange_x), 0.9);
--graph-line: var(--light0);
--graph-node: var(--dark3);
--graph-node-tag: var(--red);
--graph-node-attachment: var(--green);
--calendar-hover: var(--red);
--calendar-background-hover: var(--light0);
--calendar-week: var(--orange);
--calendar-today: var(--orange);
--dataview-key: var(--text-faint);
--dataview-key-background: rgba(var(--frost2_x), 0.3);
--dataview-value: var(--text-faint);
--dataview-value-background: rgba(var(--red_x), 0.3);
--tab-text-color-focused-active: var(--frost2);
--tab-text-color-focused-active-current: var(--red);
}
table
{
border: 1px solid var(--background-secondary) !important;
border-collapse: collapse;
}
thead
{
border-bottom: 2px solid var(--background-modifier-border) !important;
}
th
{
font-weight: 600 !important;
border: 1px solid var(--background-secondary) !important;
}
td
{
border-left: 1px solid var(--background-secondary) !important;
border-right: 1px solid var(--background-secondary) !important;
border-bottom: 1px solid var(--background-secondary) !important;
}
.markdown-rendered tbody tr:nth-child(even)
{
background-color: var(--table-row-even-background) !important;
}
.markdown-rendered tbody tr:nth-child(odd)
{
background-color: var(--table-row-odd-background) !important;
}
.markdown-rendered tbody tr:nth-child(even):hover,
.markdown-rendered tbody tr:nth-child(odd):hover
{
background-color: var(--table-row-background-hover) !important;
}
.markdown-rendered mark
{
background-color: var(--text-highlight-bg);
color: var(--text-highlight-fg);
}
.markdown-rendered mark a
{
color: var(--red) !important;
font-weight: 600;
}
.search-result-file-matched-text
{
color: var(--text-highlight-fg) !important;
}
.cm-hashtag-begin:hover, .cm-hashtag-end:hover
{
color: var(--text-accent);
/* background-color: var(--tag-background-hover); */
text-decoration: underline;
}
input[type=checkbox]
{
border: 1px solid var(--checkbox-color);
}
input[type=checkbox]:checked
{
background-color: var(--checkbox-color);
box-shadow: inset 0 0 0 2px var(--background-primary);
}
input[type=checkbox]:checked:after
{
display: none;
}
code[class*="language-"],
pre[class*="language-"]
{
line-height: var(--line-height-tight) !important;
}
.cm-url
{
color: var(--link-url) !important;
}
.cm-url:hover
{
color: var(--text-accent-hover) !important;
}
/* Keep highlight/marks the same between viewer and editor. */
.cm-highlight
{
color: var(--text-highlight-fg) !important;
}
/* Keep inline code the same between viewer and editor. */
.cm-inline-code
{
border-radius: var(--radius-s);
font-size: var(--code-size);
padding: 0.1em 0.25em;
}
.cm-formatting-code + .cm-inline-code
{
border-radius: 0;
padding: 0.1em 0;
}
.cm-formatting-code
{
border-radius: var(--radius-s) 0 0 var(--radius-s);
padding: 0.1em 0 0.1em 0.25em;
}
.cm-inline-code + .cm-formatting-code
{
border-radius: 0 var(--radius-s) var(--radius-s) 0;
padding: 0.1em 0.25em 0.1em 0;
}
.cm-line .cm-strong
{
color: var(--bold-color) !important;
}
/*
* Keep list bullet padding the same between viewer and editor.
* This is annoying with the cursor in the editor as there is a gap.
*/
/*
.cm-formatting-list
{
padding-right: 4px !important;
}
*/
/*
* Keep sub-list indenting the same between viewer and editor.
* This assumes --list-indent is default at 2em.
*/
/*
.cm-indent
{
text-indent: 1em !important;
}
*/
.mermaid .note
{
fill: var(--mermaid-note) !important;
}
.mermaid .loopLine
{
stroke: var(--mermaid-loopline) !important;
}
.mermaid .loopText>tspan,
.mermaid .entityLabel
{
fill: var(--red) !important;
}
.mermaid .exclude-range
{
fill: var(--mermaid-exclude) !important;
}
.mermaid .sequenceNumber
{
fill: var(--mermaid-seqnum) !important;
}
.calendar .week-num
{
color: var(--calendar-week) !important;
}
.calendar .today
{
color: var(--calendar-today) !important;
}
.calendar .week-num:hover,
.calendar .day:hover
{
color: var(--calendar-hover) !important;
background-color: var(--calendar-background-hover) !important;
}
.markdown-embed-title
{
color: var(--yellow);
font-weight: 600 !important;
}
.cm-active
{
background-color: var(--cursor-line-background) !important;
}
.nav-file-tag
{
color: var(--nav-file-tag) !important;
}
.is-flashing
{
background-color: var(--flashing-background) !important;
}
.dataview.inline-field-key
{
border-top-left-radius: var(--radius-s);
border-bottom-left-radius: var(--radius-s);
padding-left: 4px;
font-family: var(--font-monospace);
font-size: var(--font-smaller);
color: var(--dataview-key) !important;
background-color: var(--dataview-key-background) !important;
}
.dataview.inline-field-value
{
border-top-right-radius: var(--radius-s);
border-bottom-right-radius: var(--radius-s);
padding-right: 4px;
font-family: var(--font-monospace);
font-size: var(--font-smaller);
color: var(--dataview-value) !important;
background-color: var(--dataview-value-background) !important;
}
.suggestion-highlight
{
color: var(--red);
}
-7
View File
@@ -1,7 +0,0 @@
{
"name": "Red Graphite",
"version": "1.0.5",
"minAppVersion": "1.0.0",
"author": "Sean Williams",
"authorUrl": "https://github.com/seanwcom/Red-Graphite-for-Obsidian"
}
File diff suppressed because one or more lines are too long
-361
View File
File diff suppressed because one or more lines are too long
-4
View File
@@ -1,4 +0,0 @@
{
"workspaces": {},
"active": ""
}
-41
View File
@@ -1,41 +0,0 @@
---
type: moc
updated: 2026-03-24
title: 04 Networking
created: 2026-01-16
---
# 04 Networking
%% Begin Waypoint %%
- **Протоколы**
- **[[DHCP]]**
- [[ARP]]
- [[DNS]]
- [[ICMP - Internet Control Messag]]
- [[IP-адрес]]
- [[IPv6]]
- [[TCP vs UDP]]
- **[[Router-on-a-Stick]]**
- **[[VLAN]]**
- [[Базовая настройка коммутатора]]
- [[Витая пара]]
- [[Иерархическая модель Cisco]]
- [[Инкапсуляция данных]]
- [[Коммутатор L3 vs Маршрутизатор]]
- [[Модель OSI]]
- [[Пример настройки DHCPv6]]
- [[Режимы передачи данных в сетях]]
- [[Сегментация сети]]
- [[Сетевые устройства]]
- [[Утилита Ping]]
- [[Широковещательные и коллизионные домены. Коммутация.]]
- [[Широковещательные и коллизионные домены. Маршрутизация.]]
- [[Ethernet]]
- [[LAN vs WAN]]
- [[MAC-адрес]]
- [[NAT]]
- [[VLSM]]
- [[VPN]]
%% End Waypoint %%
Binary file not shown.
-31
View File
@@ -1,31 +0,0 @@
# 06 NoxPKB
LLMmaintained personal knowledge base (PKB) inside SecondBrain.
## Roles
- **Raw sources** (`raw/`) are the source of truth and should be treated as immutable after ingest (append-only fixes only).
- **Wiki layer** (`wiki/`) is **maintained by Nox**: it can be created/updated/refactored freely to keep the knowledge coherent.
## Workflow (commands are conceptual)
### Ingest
1) Put a new source into `raw/` (markdown preferred).
2) Nox extracts key claims, entities, concepts, and updates the wiki pages.
3) Nox updates `wiki/index.md` and appends to `wiki/log.md`.
### Query
Ask questions against the wiki. Useful answers can be filed back into `wiki/` as new pages.
### Lint
Periodically scan for:
- contradictions
- stale claims
- orphan pages
- missing pages for mentioned concepts/entities
- weak cross-references
## Conventions
- Markdown only.
- Prefer short pages that link out.
- Use `wiki/index.md` as the primary entry point.
- Use `wiki/log.md` as append-only timeline.
- **Links:** when referencing the main vault, prefer **absolute paths from the vault root** (e.g. `[[01 Library/.../Note]]`) rather than relative `../` links.
@@ -1,57 +0,0 @@
# LLM Wiki (idea)
Captured: 2026-04-12
---
LLM Wiki
A pattern for building personal knowledge bases using LLMs.
The core idea
Most people's experience with LLMs and documents looks like RAG: you upload a collection of files, the LLM retrieves relevant chunks at query time, and generates an answer. This works, but the LLM is rediscovering knowledge from scratch on every question. There's no accumulation. Ask a subtle question that requires synthesizing five documents, and the LLM has to find and piece together the relevant fragments every time. Nothing is built up. NotebookLM, ChatGPT file uploads, and most RAG systems work this way.
The idea here is different. Instead of just retrieving from raw documents at query time, the LLM incrementally builds and maintains a persistent wiki — a structured, interlinked collection of markdown files that sits between you and the raw sources. When you add a new source, the LLM doesn't just index it for later retrieval. It reads it, extracts the key information, and integrates it into the existing wiki — updating entity pages, revising topic summaries, noting where new data contradicts old claims, strengthening or challenging the evolving synthesis. The knowledge is compiled once and then kept current, not re-derived on every query.
This is the key difference: the wiki is a persistent, compounding artifact. The cross-references are already there. The contradictions have already been flagged. The synthesis already reflects everything you've read. The wiki keeps getting richer with every source you add and every question you ask.
You never (or rarely) write the wiki yourself — the LLM writes and maintains all of it. You're in charge of sourcing, exploration, and asking the right questions. The LLM does all the grunt work — the summarizing, cross-referencing, filing, and bookkeeping that makes a knowledge base actually useful over time.
Architecture
There are three layers:
Raw sources — your curated collection of source documents. Articles, papers, images, data files. These are immutable — the LLM reads from them but never modifies them. This is your source of truth.
The wiki — a directory of LLM-generated markdown files. Summaries, entity pages, concept pages, comparisons, an overview, a synthesis. The LLM owns this layer entirely.
The schema — a document that tells the LLM how the wiki is structured, what the conventions are, and what workflows to follow when ingesting sources, answering questions, or maintaining the wiki.
Operations
Ingest: read source → write a summary page → update index → update relevant entity/concept pages → append to log.
Query: answer questions with citations; optionally file answers back into the wiki.
Lint: find contradictions, stale claims, orphans, missing cross-references, and suggest new questions/sources.
Indexing and logging
Two special files help navigation:
index.md is content-oriented: catalog of everything in the wiki.
log.md is chronological: append-only record of ingests, queries, lint passes.
Optional tools
As scale grows, add local search (e.g., qmd) and/or scripts.
Why this works
Humans abandon wikis because maintenance burden grows. LLMs can touch many files cheaply, keeping cross-references current.
Note
Abstract pattern; implementation depends on domain and preferences.
@@ -1,24 +0,0 @@
# Ansible — Core (one-screen)
## 1) Что это
**Ansible** — инструмент автоматизации конфигурации/развёртывания.
Ключевые свойства:
- **agentless**: на управляемых хостах не нужен агент (обычно SSH).
- задачи описываются в **YAML** (playbook).
- **idempotency**: повторный прогон не должен “ломать/менять” уже настроенное.
## 2) Основные сущности (словарик)
- **Inventory** — список/группы хостов + параметры подключения.
- **Playbook** — YAML-сценарий: какие задачи на каких хостах.
- **Task** — единица работы в playbook.
- **Module** — атомарное действие (ping, user, service, lineinfile и т.д.).
- **Handlers** — задачи “после изменений” (через `notify`).
- **Tags** — запуск части задач.
- **Vars** — переменные.
- **Facts** — автособираемая информация о хостах.
- **Include** — переиспользование (tasks/vars/handlers/playbooks).
- **Role** — упаковка playbook’ов/задач/vars в структуру.
---
**Source:** [[01 Library/02 DevOps/Ansible/Ansible - основы|Ansible - основы]]
@@ -1,56 +0,0 @@
# Ansible — Inventory (one-screen)
## 1) Зачем
**Inventory** — описание хостов, групп и параметров подключения, к которым Ansible применяет команды/плейбуки.
## 2) INI-формат (просто)
```ini
192.168.0.1
192.168.0.2
[web]
192.168.0.3
192.168.0.4
```
Псевдонимы + параметры:
```ini
app ansible_host=ip_server1
web ansible_host=ip_server3 ansible_user=admin ansible_port=22
```
Полезные параметры:
- `ansible_connection` (ssh/winrm/local/docker)
- `ansible_port`
- `ansible_user`
- `ansible_ssh_pass` / `ansible_password`
## 3) Группы групп (children)
```ini
[mail_internal]
mail1.serv
[mail_external]
mail2.serv
[mail_all:children]
mail_internal
mail_external
```
## 4) YAML-формат (структурно)
```yaml
all:
children:
webservers:
hosts:
web1.example.com:
ansible_host: 192.168.1.10
ansible_user: admin
vars:
ansible_port: 22
ansible_python_interpreter: /usr/bin/python3
```
---
**Source:** [[01 Library/02 DevOps/Ansible/Inventory - Ansible|Inventory - Ansible]]
@@ -1,32 +0,0 @@
# Ansible — Loops (one-screen)
## 1) Зачем
Циклы позволяют применять один и тот же модуль/таску к набору значений.
## 2) `loop` (универсальный)
Удобно, когда item — структура (dict):
```yaml
- hosts: all
tasks:
- name: Create users
user:
name: "{{ item.name }}"
uid: "{{ item.uid }}"
loop:
- { name: Boris, uid: 1011 }
- { name: Anna, uid: 1012 }
```
## 3) `with_*` (старые/специальные итераторы)
Пример `with_items`:
```yaml
- hosts: localhost
vars:
fruits: [Apple, Banana, Grapes, Orange]
tasks:
- command: 'echo "{{ item }}"'
with_items: '{{ fruits }}'
```
---
**Source:** [[01 Library/02 DevOps/Ansible/Loops - Ansuble|Loops - Ansuble]]
@@ -1,61 +0,0 @@
# Ansible — Modules (one-screen)
## 1) Module = атомарное действие
Модуль — минимальная “операция”, которую Ansible выполняет на хосте.
## 2) Примеры модулей из твоих заметок
### `command`
Выполнение команды:
```yaml
- name: Display home directory
command: ls ~/
```
Параметры типа `chdir`/`creates`:
```yaml
- command: cat resolv.conf chdir=/etc
- command: mkdir /folder creates=/folder
```
### `script`
Запускает скрипт с контроллера на удалённом хосте:
```yaml
- hosts: all
tasks:
- name: Run script
script: /root/script.sh -arg1 -arg2
```
### `lineinfile`
Гарантирует наличие строки в файле:
```yaml
- hosts: all
tasks:
- lineinfile:
path: /etc/resolv.conf
line: 'nameserver 10.1.250.10'
```
### `service`
Управление сервисами (systemd):
```yaml
- hosts: web_nodes
tasks:
- name: Start httpd
service:
state: started
```
### `user` (`ansible.builtin.user`)
Управление пользователями:
```yaml
- hosts: all
tasks:
- name: Create user John
user:
name: John
uid: 1040
group: dev
```
---
**Source:** [[01 Library/02 DevOps/Ansible/Modules - Ansible|Modules - Ansible]]
@@ -1,35 +0,0 @@
# Ansible — Playbooks (one-screen)
## 1) Playbook
**Playbook** — YAML-файл (или набор), где описано:
- на каких **hosts** выполняем,
- какие **tasks** и в каком порядке.
Запуск:
```bash
ansible-playbook playbook.yml
```
## 2) Ad-hoc команды (без playbook)
Проверить связность модулем `ping`:
```bash
ansible node1 -m ping
```
Общий шаблон:
```bash
ansible <hosts> -m <module>
```
Выполнить команду на узлах:
```bash
ansible <hosts> -a <command>
ansible all -a "/sbin/reboot"
```
## 3) Отладка
Больше подробностей:
```bash
ansible-playbook playbook.yml -vv
```
---
**Source:** [[01 Library/02 DevOps/Ansible/Playbooks - Ansible|Playbooks - Ansible]]
@@ -1,29 +0,0 @@
# Apache Mesos (one-screen)
## 1) Что это
**Apache Mesos** — менеджер кластерных решений для оркестрации контейнерных и не-контейнерных нагрузок.
## 2) Архитектура
Три части:
1) **masters** — узлы управления
2) **agents** — рабочие узлы
3) **frameworks** — “платформы”/надстройки, которые запускают конкретные нагрузки
## 3) Как работают frameworks
Framework состоит из:
- **scheduler** (планировщик)
- **executor** (исполнитель)
Идея:
- masters предлагают ресурсы framework’ам,
- scheduler решает, где запускать задачи,
- executor исполняет задания на agent-узлах.
## 4) Примеры frameworks
- Marathon (контейнеры)
- Apache Aurora (cron/jobs) — deprecated
- Mesosphere DC/OS (на базе Mesos+Marathon) — deprecated
- DC/OS 2.0 (Kubernetes-совместимый) — “не готово” в твоих заметках
---
**Source:** [[01 Library/02 DevOps/Контейнеризация/Apache Mesos|Apache Mesos]]
-22
View File
@@ -1,22 +0,0 @@
# Architecture
## Three layers
### 1) Raw sources (`../raw/`)
- Curated, **immutable** source documents.
- Articles, papers, transcripts, images, datasets.
- The “source of truth”.
### 2) Wiki layer (`./`)
- LLM-maintained markdown pages: summaries, concept pages, entity pages, comparisons, synthesis.
- This is what we query most of the time.
- Updated incrementally as new sources arrive.
### 3) Schema (conventions)
- The rules that govern structure, naming, page types, and workflows.
- In this repo, start with: [[05 NoxPKB/README]] (can evolve).
## Why this architecture
- Shifts work from repeated query-time synthesis to **one-time ingest + ongoing maintenance**.
- Enables compounding knowledge via cross-links and curated pages.
- Makes contradictions and gaps visible and actionable.
@@ -1,19 +0,0 @@
# Command help (Linux) (one-screen)
## Основные способы получить справку
- `man <cmd>` — полная man-страница (описание, синтаксис, опции, примеры).
- `<cmd> --help` — короткая справка по опциям.
- `help <builtin>` — справка по встроенным командам shell (например `cd`).
- `tldr <cmd>` — краткие практичные примеры (если установлен).
## Структура man (типично)
- NAME, SYNOPSIS, DESCRIPTION, OPTIONS, EXAMPLES, SEE ALSO.
## Навигация в man
- `q` — выйти
- `/` — поиск
- Space / b — вперёд/назад
- стрелки / Enter — перемещение
---
**Source:** [[01 Library/05 Operating System/Linux/Command Help|Command Help]]
-54
View File
@@ -1,54 +0,0 @@
# DevOps — MOC
> Карта темы DevOps. Сюда складываем “one-screen” конспекты + ссылки на твои исходные заметки из `01 Library/02 DevOps`.
## What is DevOps
- [[DevOps—Основы (one-screen)]]
- Source: [[01 Library/02 DevOps/DevOps - основы|DevOps - основы]]
## IaC
- [[IaC—Основы (one-screen)]]
- [[Terraform—Core (one-screen)]]
- [[Ansible—Core (one-screen)]]
- [[Ansible—Inventory (one-screen)]]
- [[Ansible—Playbooks (one-screen)]]
- [[Ansible—Modules (one-screen)]]
- [[Ansible—Loops (one-screen)]]
Sources:
- [[01 Library/02 DevOps/IaC - основы|IaC - основы]]
- [[01 Library/02 DevOps/Terraform|Terraform]]
## Containers
- [[Docker—Основы (one-screen)]]
- [[Docker—Images & Dockerfile (one-screen)]]
- [[Docker—Volumes (one-screen)]]
- [[Docker—Networking (one-screen)]]
- [[Docker—Storage drivers (one-screen)]]
- [[Docker—Multistage build (one-screen)]]
- [[Docker—Extra (one-screen)]]
## Orchestration
- [[Kubernetes—Architecture (one-screen)]]
- [[Kubernetes—Control plane (one-screen)]]
- [[ReplicaSet—Core (one-screen)]]
Alternatives / related:
- [[Docker Swarm (one-screen)]]
- [[HashiCorp Nomad (one-screen)]]
- [[Apache Mesos (one-screen)]]
(later, only if present in Library) Core objects (Pod/Deployment/Service), Ingress / Helm / Observability
## CI/CD
- [[CI-CD—Basics (one-screen)]]
## Security-ish (from Library)
- [[Fail2Ban (Ansible) (one-screen)]]
## DevSecOps (later)
- (later) SAST/SCA/DAST, container scanning, policy as code
---
## Sources (Library)
- `01 Library/02 DevOps/` (Docker, Ansible, Terraform, Kubernetes)
@@ -1,51 +0,0 @@
# DevOps — Основы (one-screen)
## 1) Идея
**DevOps** — подход/культура и набор практик, которые сближают **разработку** и **эксплуатацию** (и всё чаще безопасность) так, чтобы:
- быстрее доставлять изменения,
- стабильнее держать прод,
- повышать качество (через автоматизацию и обратную связь).
Ключ не в “должности DevOps”, а в **сквозном процессе** от коммита до продакшна.
## 2) Что обычно входит
### IaC (Infrastructure as Code)
Инфраструктура описывается конфигами/кодом (декларативно), что даёт:
- повторяемость, версионирование, review,
- быстрое развёртывание и откат,
- стандартизацию.
Инструменты: Terraform (infra), Ansible (config mgmt).
### CI/CD
Автоматизация сборки/тестов/деплоя:
- **CI**: сборка + тесты на каждый change,
- **CD**: доставка/развёртывание (часто через пайплайн, окружения, approvals).
### Containers & Orchestration
- контейнеризация: Docker/Podman (упаковка приложения + зависимости),
- оркестрация: Kubernetes/Swarm/Nomad (распределённый запуск, scaling, self-healing).
### Observability
Мониторинг/логи/трейсинг:
- метрики (Prometheus),
- логи (Loki/ELK),
- визуализация (Grafana),
- трассировка (OpenTelemetry).
## 3) Цели/метрики (практический смысл)
Часто ориентируются на DORA-метрики:
- частота деплоев,
- lead time изменений,
- время восстановления (MTTR),
- change failure rate.
## 4) Типичный toolchain (пример)
Git → CI (GitLab CI/Jenkins) → Docker image → registry → deploy (K8s) → monitoring/logging.
## 5) Анти-паттерны
- “DevOps = один человек, который чинит всё”
- ручные деплои без воспроизводимости
- отсутствие наблюдаемости (непонятно, что сломалось)
---
**Source:** [[01 Library/02 DevOps/DevOps - основы|DevOps - основы]]
@@ -1,33 +0,0 @@
# Docker Swarm (one-screen)
## 1) Что это
**Docker Swarm** — встроенная в Docker оркестрация:
- оркестрирует **только Docker-контейнеры**,
- простая в освоении,
- без шаблонизации.
## 2) Архитектура
- **manager (master)** — узлы управления
- **worker** — рабочие узлы
## 3) Сети
Поддерживаемые типы:
- `bridge`
- `overlay`
- `ingress` (overlay + балансировка входящего трафика)
## 4) Возможности и ограничения
Есть:
- service discovery,
- volumes для персистентных данных,
- rolling update (обновление без downtime),
- интеграция с мониторингом,
- docker secrets (хранилище секретов),
- mTLS.
Нет:
- autoscaling,
- network policies.
---
**Source:** [[01 Library/02 DevOps/Контейнеризация/Docker Swarm|Docker Swarm]]
@@ -1,27 +0,0 @@
# Docker — Extra (one-screen)
## 1) Непривилегированный пользователь в контейнере
Практика: **не запускать как root** внутри контейнера и не давать лишних привилегий.
Как сделать:
- создать/использовать пользователя в Dockerfile,
- переключиться директивой **USER**.
Пример:
```dockerfile
FROM mariadb
USER 999
```
## 2) Rootless mode и Podman
Docker движется к концепции **rootless-mode** (без root-привилегий для daemon/socket), но это нетривиально (установка бинарей, скрипты, права).
Альтернатива: **Podman**
- rootless и daemonless по умолчанию,
- написан на Go,
- во многом совместим с Docker (в т.ч. Dockerfile),
- есть podman builder (описание сборки на bash),
- большинство docker-команд имеют аналоги.
---
**Source:** [[Docker - Дополнительные знания|Docker - Дополнительные знания]]
@@ -1,35 +0,0 @@
# Docker — Images & Dockerfile (one-screen)
## 1) Image: из чего состоит
**Docker image** собирается из **слоёв (layers)**. Почти каждая инструкция Dockerfile добавляет слой.
Слои кэшируются: при изменении “ранних” слоёв пересобирается всё ниже.
## 2) Ключевые инструкции Dockerfile
- **FROM** — базовый образ.
- **RUN** — команды при сборке (формируют слой).
- **COPY** — копирование файлов/папок в image.
- **ADD** — как COPY, но умеет распаковать архивы (использовать осознанно).
Часто используемые:
- **WORKDIR** — рабочая директория.
- **ENV** — переменные окружения.
- **ARG** — переменные только на этапе build.
- **CMD** — команда по умолчанию (можно переопределять).
- **ENTRYPOINT** — “жёсткая” точка входа.
- **EXPOSE** — документирует порт.
- **VOLUME** — точка монтирования volume.
## 3) Оптимизация образа (практика)
- Склеивать RUN:
```dockerfile
RUN apt update && apt install -y python3 python3-dev \
&& rm -rf /var/lib/apt/lists/*
```
- Чистить кеш пакетного менеджера.
- Удалять временные файлы **в той же инструкции**, где создавались.
- Менее изменчивое — выше, часто меняющееся — ниже.
- COPY делать батчами.
- По возможности брать лёгкие base images.
---
**Source:** [[Images, Dockerfile - Docker|Images, Dockerfile - Docker]]
@@ -1,30 +0,0 @@
# Docker — Multistage build (one-screen)
## 1) Идея
**Multistage build** — многоэтапная сборка Docker-образа: сборку делим на этапы (stages) и помечаем их.
Обычно:
- stage 1: “builder” (компиляция, зависимости, tooling)
- stage 2: “runtime” (только артефакт + минимальный runtime)
## 2) Что даёт
- **меньше итоговый образ**,
- быстрее сборка/доставка (часто),
- меньше зависимостей в runtime,
- **меньше поверхность атаки**,
- можно переиспользовать промежуточные stages.
## 3) Мини-пример
```dockerfile
FROM golang:1.22 AS builder
WORKDIR /src
COPY . .
RUN CGO_ENABLED=0 go build -o app ./cmd/app
FROM gcr.io/distroless/static
COPY --from=builder /src/app /app
ENTRYPOINT ["/app"]
```
---
**Source:** [[Multistaging - Docker|Multistaging - Docker]]
@@ -1,23 +0,0 @@
# Docker — Networking (one-screen)
## 1) Зачем network drivers
Docker должен обеспечивать контейнерам сетевую связность и изоляцию:
- маршрутизация/правила (iptables),
- формирование/инкапсуляция пакетов,
- иногда шифрование.
## 2) Основные драйверы
- **bridge** (по умолчанию): контейнеры в одной bridge-сети видят друг друга; между разными bridge сетями связи нет.
- **host**: контейнер использует сеть хоста (меньше изоляции; возможны конфликты портов; только Linux).
- **overlay**: сеть поверх сети для контейнеров на разных хостах.
- **macvlan**: контейнер как “физическое устройство” в сети (с отдельным MAC); Linux.
- **none**: полностью без сети.
- **plugins**: сторонние драйверы/CNI.
## 3) Практические заметки
- Bridge — безопасный дефолт, хорош для изоляции.
- Если нужно менять сетевую конфигурацию внутри контейнера, могут понадобиться дополнительные **capabilities** (например `CAP_NET_ADMIN`).
- Для более продвинутых сценариев — смотреть в сторону CNI-плагинов.
---
**Source:** [[Network Drivers - Docker|Network Drivers - Docker]]
@@ -1,22 +0,0 @@
# Docker — Storage drivers (one-screen)
## 1) Контейнерный слой (container layer)
При запуске контейнера появляется **записываемый слой** (container layer) поверх read-only слоёв image. Все изменения файлов внутри контейнера попадают туда.
## 2) Зачем нужны storage drivers
Docker управляет слоями образов и container layer через **storage driver**.
## 3) Типы хранилищ (в общих чертах)
- **Block level**: данные блоками фиксированного размера; быстрый доступ.
Примеры: ZFS, DeviceMapper.
- **File level**: иерархия директорий; доступ по пути; самый распространённый.
Примеры: AUFS, Overlay, **Overlay2** (дефолт Docker).
- **Object level**: данные как объекты + метаданные; доступ через API; обычно “перезапись целиком”.
## 4) Практика
- В Docker по умолчанию используется **overlay2**.
- Меняется в `/etc/docker/daemon.json`.
- Важно: storage driver требует **совместимую backing filesystem** — ту ФС, где лежит `/var/lib/docker`.
---
**Source:** [[Storage Drivers - Docker|Storage Drivers - Docker]]
@@ -1,41 +0,0 @@
# Docker — Volumes (one-screen)
## 1) Зачем
Данные контейнера по умолчанию **неперсистентны** (контейнер удалили — данные исчезли). Поэтому “живущие” данные (БД, логи, конфиги, артефакты) выносят во **volumes**.
По умолчанию Docker volumes лежат в:
`/var/lib/docker/volumes/`
## 2) Варианты подключения
### Host bind-mount
Монтируем конкретный путь хоста:
```bash
docker run -v /host/data:/var/lib/mysql/data ...
```
Плюс — прозрачно. Минус — завязка на конкретный путь/права.
### Anonymous volume
```bash
docker run -v /var/lib/mysql/data ...
```
Docker сам создаст volume в дефолтной директории.
### Named volume
```bash
docker run -v mydb:/var/lib/mysql/data ...
```
Как anonymous, но есть имя, можно переиспользовать.
## 3) Права доступа (важно)
Права/владелец в смонтированном каталоге зависят от **uid/gid** внутри контейнера.
Чтобы не монтировать всё от root, можно использовать **userns-remap** (маппинг uid/gid контейнера → другие uid/gid на хосте).
Настраивается в `/etc/docker/daemon.json`:
```json
{
"userns-remap": "<username>"
}
```
---
**Source:** [[Volume - Docker|Volume - Docker]]
@@ -1,35 +0,0 @@
# Docker — Основы (one-screen)
## 1) Что такое Docker
**Docker** — платформа контейнеризации: упаковываем приложение + зависимости в **image**, запускаем как **container**.
Контейнер ≠ виртуальная машина:
- VM виртуализирует железо/ОС (гипервизор), тяжелее.
- контейнер — изоляция процессов на уровне ОС (namespaces/cgroups), легче и быстрее стартует.
## 2) Базовые сущности
- **Image** — неизменяемый шаблон (слои), из которого запускаются контейнеры.
- **Container** — запущенный экземпляр image.
- **Registry** — хранилище image (Docker Hub, GHCR, GitLab registry).
## 3) Зачем
- одинаковый runtime “у меня/у тебя/в проде”,
- быстрые деплои,
- удобная сборка CI,
- изоляция зависимостей.
## 4) Минимальные команды (must-know)
```bash
docker pull nginx:alpine
docker run --rm -p 8080:80 nginx:alpine
docker ps
docker logs <container>
docker exec -it <container> sh
```
## 5) Важные детали
- Сетевой драйвер по умолчанию: **bridge**.
- Персистентные данные контейнера выносят в **volumes**.
---
**Source:** [[Основы - Docker|Основы - Docker]]
@@ -1,33 +0,0 @@
# Environment variables (Linux) (one-screen)
## 1) Что это
Переменные окружения — именованные пары `NAME=VALUE`, влияющие на работу программ и процессов.
Обычно наследуются дочерними процессами от родительского.
Посмотреть все:
```bash
env
# или
printenv
```
## 2) Базовые переменные
- `PATH` — где искать команды (см. [[PATH (Command path) (one-screen)]]).
- `HOME` — домашняя директория (`~`).
- `USER` — имя пользователя.
- `SHELL` — оболочка по умолчанию.
- `LANG` — локаль.
- `PWD` — текущая директория.
## 3) Как задавать
На текущую сессию:
```bash
export NAME=VALUE
```
Постоянно (для пользователя):
```bash
echo 'export NAME=VALUE' >> ~/.bashrc
```
---
**Source:** [[01 Library/05 Operating System/Linux/Environment Variables|Environment Variables]]
@@ -1,56 +0,0 @@
# Fail2Ban (Ansible) (one-screen)
## 1) Что такое Fail2Ban
**Fail2Ban** — защита от brute-force атак (SSH/FTP/веб-панели и т.п.):
- анализирует лог-файлы,
- при подозрительной активности временно банит IP.
## 2) Пример `jail.local`
```ini
[sshd]
enabled = true
port = ssh
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600
findtime = 600
```
Смысл параметров:
- `maxretry` — сколько попыток до бана,
- `findtime` — окно времени для подсчёта попыток,
- `bantime` — длительность бана.
## 3) Установка и настройка через Ansible (идея)
Шаги:
1) поставить пакет (`apt`),
2) положить конфиг (`template``/etc/fail2ban/jail.local`),
3) перезапустить и включить сервис (`service`).
Пример playbook:
```yaml
- name: Install & configure Fail2ban
hosts: all
become: true
tasks:
- name: Install fail2ban
apt:
name: fail2ban
state: present
- name: Copy jail.local
template:
src: jail.local.j2
dest: /etc/fail2ban/jail.local
owner: root
group: root
mode: 0644
- name: Restart fail2ban
service:
name: fail2ban
state: restarted
enabled: true
```
---
**Source:** [[01 Library/02 DevOps/Ansible/Fail2Ban - Ansible|Fail2Ban - Ansible]]
@@ -1,43 +0,0 @@
# File permissions (Linux) (one-screen)
## 1) Модель прав
Права задаются для:
- **owner (u)**
- **group (g)**
- **others (o)**
Разрешения:
- `r` — read (файл: читать; директория: листинг)
- `w` — write (файл: менять; директория: создавать/удалять внутри)
- `x` — execute (файл: запуск; директория: “войти”/`cd`)
Пример:
`-rwxr--r--`
- `-` файл (`d` было бы директорией)
- `rwx` для owner
- `r--` для group
- `r--` для others
## 2) Базовые команды
- `chmod` — изменить права:
```bash
chmod 600 file
chmod o+r -R dir
```
- `chown` — сменить владельца:
```bash
chown user path
chown user:group path
```
- `chgrp` — сменить группу:
```bash
chgrp group file
```
## 3) Особые биты
- **SUID** (`s`) — исполняемый файл запускается с правами владельца (пример: `passwd`).
- **SGID** — как SUID, но для группы; на директориях — наследование группы.
- **Sticky bit** (`t`) — на директориях запрещает удалять чужие файлы (пример: `/tmp`).
---
**Source:** [[01 Library/05 Operating System/Linux/File Permissions|File Permissions]]
@@ -1,38 +0,0 @@
# HashiCorp Nomad (one-screen)
## 1) Что это
**Nomad** — фреймворк для кластерных решений:
- поддерживает контейнерные и **не-контейнерные** нагрузки,
- есть free/enterprise версии,
- базовая установка простая, но с ростом числа расширений усложняется администрирование.
## 2) Архитектура
- управляющие узлы: **servers**
- рабочие узлы: **clients**
## 3) Расширения (экосистема)
Можно подключать:
- Consul (service discovery)
- Vault (secrets)
- Prometheus/Grafana/ELK (monitoring/logging)
- и др.
## 4) Jobs/Tasks/Drivers
Нагрузка описывается как **job → tasks**, где task выполняется драйвером:
- docker
- qemu
- java
- etc
## 5) Манифесты и сеть/стораж
- язык манифестов: **HCL** (проприетарный; ограниченная конвертация в json/yml).
- поддержка **CNI** (сети) и **CSI** (Container Storage Interface).
## 6) Скалирование
Поддерживает:
- горизонтальное,
- вертикальное,
- “кластерное” (увеличение server/client узлов).
---
**Source:** [[01 Library/02 DevOps/Контейнеризация/HashiCorp Nomad|HashiCorp Nomad]]
@@ -1,24 +0,0 @@
# IaC — Основы (one-screen)
## 1) Что такое IaC
**Infrastructure as Code** — инфраструктура описывается как код/конфигурация:
- хранится в VCS,
- проходит review,
- воспроизводима (одинаково поднимается снова),
- проще откатывать/аудировать.
Ключевая идея: **декларативность** — описываем не “как сделать”, а “какое состояние хотим”.
## 2) Два базовых инструмента (по твоим заметкам)
### Terraform (infra provisioning)
- HashiCorp, декларативное управление инфраструктурой.
- Описываем желаемую инфраструктуру в `.tf` (часто `main.tf`).
- **Provider** — интерпретатор/адаптер к API вендора (AWS/Yandex/etc).
- CRUD ресурсы: аккаунты/группы, ВМ, сети, диски, кластера и т.д.
### Ansible (config management)
- Red Hat, декларативные playbooks.
- Исторически сильнее в “настроить на уже существующих хостах” (пакеты, конфиги, сервисы).
---
**Source:** [[01 Library/02 DevOps/IaC - основы|IaC - основы]]
@@ -1,36 +0,0 @@
# Kubernetes — Architecture (one-screen)
## 1) Две плоскости
Kubernetes логически состоит из:
1) **Control Plane** — управление кластером (состояние, расписание, контроллеры).
2) **Data Plane** — рабочие ноды и нагрузки (pods и т.п.).
## 2) Control Plane: ключевые компоненты
### etcd
- key-value хранилище, консенсус **Raft**.
- в k8s хранит конфигурацию/состояние кластера.
### kube-api-server
- **точка входа** в кластер (REST API).
- посредник между компонентами control/data plane.
- аутентификация/авторизация.
- **stateless**, ставится на master-ноды.
- лидер-выбор через **lease**.
### kube-controller-manager
- запускает/координирует контроллеры.
- сборка мусора.
- **stateless**, на master-ноды.
- лидер-выбор через **lease**.
Примеры контроллеров:
- node-controller
- replicaset-controller (см. [[ReplicaSet—Core (one-screen)]])
- endpoint-controller
- token/account controllers
## 3) Lease (idea)
Простой механизм лидер-элекшена: кто первым “записал себя” как leader в хранилище конфигурации — тот лидер; при отказе — переизбрание.
---
**Source:** [[Kubernetes|Kubernetes]]
@@ -1,17 +0,0 @@
# Kubernetes — Control Plane (one-screen)
## 1) Что такое Control Plane
Control Plane — компоненты, которые **управляют** кластером: принимают запросы, хранят состояние, запускают контроллеры.
## 2) Основные компоненты
- **etcd** — источник истины (key-value), консенсус Raft.
- **kube-api-server** — REST API, единая точка входа; authn/authz; stateless; лидер через lease.
- **kube-controller-manager** — контроллеры (node, replicaset, endpoints, tokens/accounts), garbage collection; stateless; лидер через lease.
(В конспекте у тебя явно расписаны эти 3, остальные можно добавлять по мере углубления.)
## 3) Важная связка
Почти любое действие в кластере идёт через **API server**, и изменение состояния фиксируется в **etcd**, после чего контроллеры “доводят” систему до desired state.
---
**Source:** [[Kubernetes|Kubernetes]]

Some files were not shown because too many files have changed in this diff Show More