323 lines
104 KiB
JSON
323 lines
104 KiB
JSON
{
|
||
"main": {
|
||
"id": "5324373015726ba8",
|
||
"type": "split",
|
||
"children": [
|
||
{
|
||
"id": "4e9db25a7859d46d",
|
||
"type": "tabs",
|
||
"children": [
|
||
{
|
||
"id": "b338ee701498f876",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "markdown",
|
||
"state": {
|
||
"file": "99 System/Archive/Основные команды git.md",
|
||
"mode": "preview",
|
||
"source": false,
|
||
"backlinks": false
|
||
},
|
||
"icon": "lucide-file",
|
||
"title": "Основные команды git"
|
||
}
|
||
},
|
||
{
|
||
"id": "3e242b36cec6a5ec",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "markdown",
|
||
"state": {
|
||
"file": "AGENTS.md",
|
||
"mode": "preview",
|
||
"source": false,
|
||
"backlinks": false
|
||
},
|
||
"icon": "lucide-file",
|
||
"title": "AGENTS"
|
||
}
|
||
}
|
||
],
|
||
"currentTab": 1
|
||
}
|
||
],
|
||
"direction": "vertical"
|
||
},
|
||
"left": {
|
||
"id": "a9c2d5e65288011a",
|
||
"type": "split",
|
||
"children": [
|
||
{
|
||
"id": "383cca303cf4b57d",
|
||
"type": "tabs",
|
||
"children": [
|
||
{
|
||
"id": "27e6486165131cfa",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "file-explorer",
|
||
"state": {
|
||
"sortOrder": "alphabetical",
|
||
"autoReveal": true
|
||
},
|
||
"icon": "lucide-folder-closed",
|
||
"title": "Файловый менеджер"
|
||
}
|
||
},
|
||
{
|
||
"id": "66079465678173e5",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "search",
|
||
"state": {
|
||
"query": "tag:#gym",
|
||
"matchingCase": false,
|
||
"explainSearch": false,
|
||
"collapseAll": false,
|
||
"extraContext": false,
|
||
"sortOrder": "alphabetical"
|
||
},
|
||
"icon": "lucide-search",
|
||
"title": "Search"
|
||
}
|
||
},
|
||
{
|
||
"id": "c2541ce190da912e",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "bookmarks",
|
||
"state": {},
|
||
"icon": "lucide-bookmark",
|
||
"title": "Bookmarks"
|
||
}
|
||
},
|
||
{
|
||
"id": "673ce6e6c09cfc9c",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "tag",
|
||
"state": {
|
||
"sortOrder": "frequency",
|
||
"useHierarchy": true,
|
||
"showSearch": false,
|
||
"searchQuery": ""
|
||
},
|
||
"icon": "lucide-tags",
|
||
"title": "Tags"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"direction": "horizontal",
|
||
"width": 207
|
||
},
|
||
"right": {
|
||
"id": "38c591aa0966839e",
|
||
"type": "split",
|
||
"children": [
|
||
{
|
||
"id": "86a193b1d3159ff8",
|
||
"type": "tabs",
|
||
"children": [
|
||
{
|
||
"id": "06940eb960fc1db5",
|
||
"type": "leaf",
|
||
"pinned": true,
|
||
"state": {
|
||
"type": "terminal:terminal",
|
||
"state": {
|
||
"terminal:terminal": {
|
||
"cwd": "/home/ada/Documents/Vaults/SecondBrain",
|
||
"focus": false,
|
||
"profile": {
|
||
"args": [
|
||
"--login"
|
||
],
|
||
"executable": "/usr/bin/zsh",
|
||
"followTheme": true,
|
||
"name": "ZSH",
|
||
"platforms": {
|
||
"darwin": false,
|
||
"linux": true
|
||
},
|
||
"pythonExecutable": "python3",
|
||
"restoreHistory": true,
|
||
"rightClickAction": "copyPaste",
|
||
"successExitCodes": [
|
||
"0",
|
||
"SIGINT",
|
||
"SIGTERM"
|
||
],
|
||
"terminalOptions": {
|
||
"fontFamily": "FiraCode Nerd Font Mono",
|
||
"documentOverride": null
|
||
},
|
||
"type": "integrated",
|
||
"useWin32Conhost": false
|
||
},
|
||
"profileSourceId": "7004edff-76db-412f-95d3-5fd8e180d055",
|
||
"serial": {
|
||
"columns": 48,
|
||
"data": "\u001b[48;5;22m \u001b[2m \u001b[38;2;205;214;244;22mодсети, Подсети | seed | concept | [net\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mwork, networking, subnet, ipv4] |\u001b[6X\r\n\u001b[0m \u001b[2m488 \u001b[0m \u001b[38;2;205;214;244m| [[Режимы передачи данных в сетях]] |\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mРежимы Передачи Данных В Сетях | stable\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22m | concept | [network, networking] |\r\n\u001b[0m \u001b[2m489 \u001b[0m \u001b[38;2;205;214;244m| [[Сегментация сети]] | Сегментация Се\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mти | stable | concept | [network, netwo\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mrking] |\r\n\u001b[39;48;5;22m \u001b[2m490 \u001b[32;22m+\u001b[38;2;205;214;244m| [[Сетевые порты]] | Сетевые порты | s\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22meed | concept | [network, networking, p\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22morts, tcp, udp, web] |\u001b[17X\r\n\u001b[0m \u001b[2m491 \u001b[0m \u001b[38;2;205;214;244m| [[Сетевые устройства]] | Сетевые Устр\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mойства | stable | concept | [network, n\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22metworking] |\r\n\u001b[0m \u001b[2m ⋮\r\n\u001b[0m \u001b[2m520 \u001b[0m \u001b[38;2;205;214;244m| [[DNS]] | DNS | stable | concept | [n\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22metwork, networking, protocols, dns] |\r\n\u001b[39;48;5;22m \u001b[2m521 \u001b[32;22m+\u001b[38;2;205;214;244m| [[HTTP, HTTPS и HTTP3]] | HTTP, HTTPS\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m и HTTP/3 | seed | concept | [web, netw\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mork, networking, protocols, http, https\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m, http3] |\u001b[29X\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22motocols, icmp] |\r\n\u001b[0m \u001b[2m ⋮\r\n\u001b[0m \u001b[2m525 \u001b[0m \u001b[38;2;205;214;244m| [[TCP vs UDP]] | TCP Vs UDP | stable\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22m| concept | [network, networking, proto\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mcols] |\r\n\u001b[39;48;5;22m \u001b[2m526 \u001b[32;22m+\u001b[38;2;205;214;244m| [[URI, URL, URN]] | URI, URL, URN | s\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22meed | concept | [web, network, networki\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mng, uri, url, urn] |\u001b[19X\r\n\u001b[0m \u001b[2m527\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"## 99 System/Archive$|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка Speaking|Подготовка к экзамену\"\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22m\"99 System/INDEX.md\"\r\n\u001b[39;2m └ 3 matches in 1F:\r\n\r\n … +7 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m|...\r\n\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mДобавляю в раздел Archive сам Markdown-файл с\r\n исходным списком вопросов, который был в Inbox\r\n и теперь перенесён.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m INDEX.md\r\n\r\n\u001b[2m• \u001b[0mEdited 99 System/INDEX.md (\u001b[32m+1\u001b[0m \u001b[31m-0\u001b[0m)\r\n \u001b[2m652 \u001b[0m \u001b[38;2;205;214;244m| [[Подготовка к защите ЛР2]] | Подгото\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mвка к защите ЛР2 | processing | lab | [\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mmephi] |\r\n\u001b[39;48;5;22m \u001b[2m653 \u001b[32;22m+\u001b[38;2;205;214;244m| [[Подготовка к экзамену по Веб-Разраб\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mотке]] | — | seed | concept | [] |\r\n\u001b[0m\u001b[48X\r\n\u001b[2m• \u001b[0mПроверка выявила важный момент: в HTML-тексте\r\n есть буквальные примеры тегов вроде \u001b[36m<head>\u001b[0m и\r\n \u001b[36m<form>\u001b[0m. Браузер может воспринять их как\r\n разметку, поэтому экранирую такие примеры и\r\n пересоберу PDF.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"<(doctype|html|head|body|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mtitle|meta|link|style|script|div|p|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22msection|span|a |img|br|form|label|input|\r\n\u001b[39;2m │ … +5 lines\r\n └ 351 matches in 145F:\r\n\r\n … +460 lines (ctrl + t to view transcript)\r\n\r\n\u001b[0m \u001b[2m... +182\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mЭкранировать нужно не весь файл, а только\r\n примеры тегов внутри учебного текста. Правлю\r\n эти строки вручную, чтобы не задеть настоящую\r\n HTML-разметку документа.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m Подготовка к экзамену по веб-\r\n разработке.html\r\n\r\n\u001b[2m• \u001b[0mEdited 90 Library/Programming/Web/Подготовка к\r\nэкзамену по веб-разработке.html (\u001b[32m+6\u001b[0m \u001b[31m-6\u001b[0m)\r\n \u001b[2m400 \u001b[0m \u001b[38;2;205;214;244m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mdiv\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"cards\"\u001b[38;2;148;226;213m>\r\n\u001b[39;48;5;52m \u001b[2m401 \u001b[31;22m-\u001b[38;2;205;214;244;2m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-html-\r\n\u001b[39;22m \u001b[2m \u001b[38;2;166;227;161mstructure\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mСтруктура документа\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\r\n\u001b[39;22m \u001b[2m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mHTML5-документ начинается с `<!docty\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mpe html>`, затем `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mhtml\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`, внутри `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mhea\r\n\u001b[39;22m \u001b[2m \u001b[38;2;137;180;250md\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m` с метаданными и `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mbody\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m` с видимым\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mсодержимым.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"detail-link\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mh\r\n\u001b[39;22m \u001b[2m \u001b[38;2;249;226;175mref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"#d-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно: HTML\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250martic\r\n\u001b[39;22m \u001b[2m \u001b[38;2;137;180;250mle\u001b[38;2;148;226;213m>\r\n\u001b[39;22m \u001b[2m402 \u001b[31;22m-\u001b[38;2;205;214;244;2m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-html-\r\n\u001b[39;22m \u001b[2m \u001b[38;2;166;227;161mcomments\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mКомментарии в HTML\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mp\r\n\u001b[39;22m \u001b[2m \u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mКомментарий пишется как `\u001b[38;2;147;153;178m<!-- текст --\r\n\u001b[39;22m \u001b[2m \u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m`. Браузер его не отображает, но он ви\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mден в исходном коде.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"detai\r\n\u001b[39;22m \u001b[2m \u001b[38;2;166;227;161ml-link\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"#d-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно: HTML\u001b[38;2;148;226;213m</\r\n\u001b[39;22m \u001b[2m \u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250marticle\u001b[38;2;148;226;213m>\r\n\u001b[39;22m \u001b[2m403 \u001b[31;22m-\u001b[38;2;205;214;244;2m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-head\"\r\n\u001b[39;22m \u001b[2m \u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mТеги внутри head\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mВ `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mhead\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244m обычно находятся `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mtitle\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`, `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mmeta\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`,\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244m`\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mlink\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`, `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mstyle\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`, `<\u001b[38;2;137;180;250mscript\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m` и техни\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mческие данные страницы.</\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mde\r\n\u001b[39;22m \u001b[2m \u001b[38;2;137;180;250mtail-link\u001b[38;2;205;214;244m\" href=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-html\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mПодробно: HTM\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mL</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[39;22m \u001b[2m404 \u001b[31;22m-\u001b[38;2;205;214;244;2m <\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m class=\"card\" id=\"\u001b[38;2;137;180;250ms-meta\u001b[38;2;205;214;244m\"\r\n\u001b[39;22m \u001b[2m \u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mМета-теги и viewport</\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m`<\u001b[38;2;137;180;250mmeta\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244m charset=\"\u001b[38;2;137;180;250mutf-8\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m` задаёт кодировку. `v\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244miewport` нужен адаптивной вёрстке: `wid\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mth=\u001b[38;2;137;180;250mdevice-width\u001b[38;2;147;153;178m,\u001b[38;2;205;214;244m \u001b[38;2;137;180;250minitial-scale\u001b[38;2;205;214;244m=1.0`.</\u001b[38;2;137;180;250mp\r\n\u001b[39;22m \u001b[2m \u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mdetail-link\u001b[38;2;205;214;244m\" href=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-html\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mПодробно: HTML</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[39;48;5;22;22m \u001b[2m401 \u001b[32;22m+\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m class=\"card\" id=\"\u001b[38;2;137;180;250ms-html-\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mstructure\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mСтруктура документа</\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m<\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mHTML5-документ начинается с <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m&l\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mt;!doctype \u001b[38;2;137;180;250mhtml\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>,\u001b[38;2;205;214;244m затем <\u001b[38;2;137;180;250mcode\r\n\u001b[39m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mhtml\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>,\u001b[38;2;205;214;244m внутри <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mhead\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m с метаданными и <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m&\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mlt;\u001b[38;2;137;180;250mbody\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m с видимым содержимым\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m.</\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mdetail-link\u001b[38;2;205;214;244m\" href=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-ht\r\n\u001b[39m \u001b[2m \u001b[38;2;249;226;175;22mml\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mПодробно: HTML</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[39m \u001b[2m402 \u001b[32;22m+\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m class=\"card\" id=\"\u001b[38;2;137;180;250ms-html-\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mcomments\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mКомментарии в HTML</\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mp\r\n\u001b[39m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244mКомментарий пишется как <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<!--\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mтекст --></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m. Браузер его не ото\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mбражает\u001b[38;2;147;153;178m,\u001b[38;2;205;214;244m но он виден в исходном коде.</\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mdetail-link\u001b[38;2;205;214;244m\" href=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-html\u001b[38;2;205;214;244m\"\r\n\u001b[39m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244mПодробно: HTML</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[39m \u001b[2m403 \u001b[32;22m+\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m class=\"card\" id=\"\u001b[38;2;137;180;250ms-head\u001b[38;2;205;214;244m\"\r\n\u001b[39m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mТеги внутри \u001b[38;2;137;180;250mhead\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mВ <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m&l\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mt;\u001b[38;2;137;180;250mhead\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m обычно находятся <\u001b[38;2;137;180;250mcod\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22me\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mtitle\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>,\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mmeta\u001b[38;2;205;214;244m&\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mgt;</\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>,\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mlink\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>,\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m<\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mstyle\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>,\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ms\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mcript\u001b[38;2;205;214;244m></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m и технические данные с\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mтраницы.</\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mdetail-link\u001b[38;2;205;214;244m\" href\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-html\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mПодробно: HTML</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[39m \u001b[2m404 \u001b[32;22m+\u001b[38;2;205;214;244m <\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m class=\"card\" id=\"\u001b[38;2;137;180;250ms-meta\u001b[38;2;205;214;244m\"\r\n\u001b[39m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mМета-теги и viewport</\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m<\u001b[38;2;137;180;250mmeta\u001b[38;2;205;214;244m charset=\"\u001b[38;2;137;180;250mutf-8\u001b[38;2;205;214;244m\"></\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m зад\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mаёт кодировку. <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mviewport</\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m ну\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mжен адаптивной вёрстке: <\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mwidth=\u001b[38;2;137;180;250mdev\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mice-width\u001b[38;2;147;153;178m,\u001b[38;2;205;214;244m \u001b[38;2;137;180;250minitial-scale\u001b[38;2;205;214;244m=1.0</\u001b[38;2;137;180;250mcode\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m.</\u001b[38;2;137;180;250mp\r\n\u001b[39m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mdetail-link\u001b[38;2;205;214;244m\" href=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-html\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mПодробно: HTML</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[0m \u001b[2m405 \u001b[0m \u001b[38;2;205;214;244m <\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m class=\"card\" id=\"\u001b[38;2;137;180;250ms-flow\u001b[38;2;205;214;244m\"\r\n\u001b[0m \u001b[2m \u001b[38;2;147;153;178;22m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mНормальный поток</\u001b[38;2;137;180;250mh3\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mНормальный\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22m поток — базовое расположение элементов\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22m без flex/grid/position: блочные идут с\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mверху вниз\u001b[38;2;147;153;178m,\u001b[38;2;205;214;244m строчные текут внутри строк\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mи.</\u001b[38;2;137;180;250mp\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m class=\"\u001b[38;2;137;180;250mdetail-link\u001b[38;2;205;214;244m\" href=\"\u001b[38;2;147;153;178m#\u001b[38;2;249;226;175md-h\r\n\u001b[0m \u001b[2m \u001b[38;2;249;226;175;22mtml\u001b[38;2;205;214;244m\"\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244mПодробно: HTML</\u001b[38;2;137;180;250ma\u001b[38;2;147;153;178m>\u001b[38;2;205;214;244m</\u001b[38;2;137;180;250marticle\u001b[38;2;147;153;178m>\r\n\u001b[0m \u001b[2m ⋮\r\n\u001b[0m \u001b[2m411 \u001b[0m \u001b[38;2;205;214;244m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-text-\r\n\u001b[0m \u001b[2m \u001b[38;2;166;227;161;22mtable\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mЗаголовки, абзацы, списки, т\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mаблицы\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`h1-h6` задают структуру\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mзаголовков, `p` — абзац, `ul/ol/li` — с\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mписки, `table/tr/th/td` — табличные дан\r\n\u001b[0m \u001b[2m \u001b[38;2;205;214;244;22mные.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"detail-link\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"#d\r\n\u001b[0m \u001b[2m \u001b[38;2;166;227;161;22m-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно: HTML\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250marticle\u001b[38;2;148;226;213m>\r\n\u001b[39;48;5;52m \u001b[2m412 \u001b[31;22m-\u001b[38;2;205;214;244;2m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-img-l\r\n\u001b[39;22m \u001b[2m \u001b[38;2;166;227;161mink\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mКартинки и ссылки\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mСсылк\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mа: `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"...\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`. Картинка: `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mimg\u001b[38;2;205;214;244m \u001b[38;2;249;226;175msr\r\n\u001b[39;22m \u001b[2m \u001b[38;2;249;226;175mc\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"...\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175malt\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"...\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`; `alt` важен для до\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mступности и случаев, когда изображение\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mне загрузилось.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"detail-lin\r\n\u001b[39;22m \u001b[2m \u001b[38;2;166;227;161mk\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"#d-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно: HTML\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250ma\r\n\u001b[39;22m \u001b[2m \u001b[38;2;137;180;250mrticle\u001b[38;2;148;226;213m>\r\n\u001b[39;22m \u001b[2m413 \u001b[31;22m-\u001b[38;2;205;214;244;2m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-white\r\n\u001b[39;22m \u001b[2m \u001b[38;2;166;227;161mspace\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПереносы строк и пробелы\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\r\n\u001b[39;22m \u001b[2m \u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mВ HTML последовательности пробелов\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mсхлопываются. Перенос строки в коде обы\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mчно не равен переносу на странице; для\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mявного переноса есть `\u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mbr\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m`.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclas\r\n\u001b[39;22m \u001b[2m \u001b[38;2;249;226;175ms\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"detail-link\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"#d-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244m: HTML\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250marticle\u001b[38;2;148;226;213m>\r\n\u001b[39;48;5;22;22m \u001b[2m412 \u001b[32;22m+\u001b[38;2;205;214;244m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-img-l\r\n\u001b[39m \u001b[2m \u001b[38;2;166;227;161;22mink\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mКартинки и ссылки\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mСсылк\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mа: \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;243;139;168m<\u001b[38;2;205;214;244ma href=\"...\"\u001b[38;2;243;139;168m>\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m. К\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mартинка: \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;243;139;168m<\u001b[38;2;205;214;244mimg src=\"...\" alt=\".\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m..\"\u001b[38;2;243;139;168m>\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m; \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244malt\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m важен\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mдля доступности и случаев, когда изобра\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mжение не загрузилось.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"deta\r\n\u001b[39m \u001b[2m \u001b[38;2;166;227;161;22mil-link\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"#d-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно: HTML\u001b[38;2;148;226;213m<\r\n\u001b[39m \u001b[2m \u001b[38;2;148;226;213;22m/\u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250marticle\u001b[38;2;148;226;213m>\r\n\u001b[39m \u001b[2m413 \u001b[32;22m+\u001b[38;2;205;214;244m \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250marticle\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"card\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mid\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"s-white\r\n\u001b[39m \u001b[2m \u001b[38;2;166;227;161;22mspace\"\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250mh3\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПереносы строк и пробелы\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mh3\r\n\u001b[39m \u001b[2m \u001b[38;2;148;226;213;22m><\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mВ HTML последовательности пробелов\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mсхлопываются. Перенос строки в коде обы\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mчно не равен переносу на странице; для\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mявного переноса есть \u001b[38;2;148;226;213m<\u001b[38;2;137;180;250mcode\u001b[38;2;148;226;213m>\u001b[38;2;243;139;168m<\u001b[38;2;205;214;244mbr\u001b[38;2;243;139;168m>\u001b[38;2;148;226;213m</\r\n\u001b[39m \u001b[2m \u001b[38;2;137;180;250;22mcode\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244m.\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mp\u001b[38;2;148;226;213m><\u001b[38;2;137;180;250ma\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mclass\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"detail-link\"\u001b[38;2;205;214;244m \u001b[38;2;249;226;175mhref\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"\r\n\u001b[39m \u001b[2m \u001b[38;2;166;227;161;22m#d-html\"\u001b[38;2;148;226;213m>\u001b[38;2;205;214;244mПодробно: HTML\u001b[38;2;148;226;213m</\u001b[38;2;137;180;250ma\u001b[38;2;148;226;213m></\u001b[38;2;137;180;250marticle\u001b[38;2;148;226;213m>\r\n\u001b[0m \u001b[2m414 \u001b[0m \u001b[38;2;205;214;244m \u001b[38;2;148;226;213m</\u001b[38;2;137;180;250mdiv\u001b[38;2;148;226;213m>\u001b[29X\r\n\r\n\u001b[31;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"\u001b[38;2;147;153;178m`\u001b[38;2;148;226;213m<|>\u001b[38;2;147;153;178m`\u001b[38;2;166;227;161m|<code>[^<]*<[^/]|<\"\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22m\"90 Library/Programming/Web/Подготовка к\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mэкзамену по веб-разработке.html\"\r\n\u001b[39;2m └ zsh:1: parse error near `|'\r\n\u001b[0m \u001b[2mzsh:1: parse error in command substitution\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'`<'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mWeb/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 1 matches in 1F:\r\n\r\n … +4 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mtr><tr><td>`POST`</td>...\r\n\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'<'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mProgramming/Web/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 7 matches in 7F:\r\n\r\n … +21 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mclass=\"detai...\r\n\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'>`'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mWeb/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\r\n\r\n\u001b[39;2m────────────────────────────────────────────────\r\n\r\n• \u001b[0mКритичные \u001b[36m<...>\u001b[0m-примеры исправлены.\r\n Пересобираю PDF, чтобы он соответствовал\r\n исправленному HTML.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mchromium\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mheadless\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mno-sandbox\r\n\u001b[39;2m │ \u001b[38;2;147;153;178;22m--\u001b[38;2;235;160;172mdisable-gpu\r\n\u001b[39;2m │ \u001b[38;2;147;153;178;22m--\u001b[38;2;235;160;172mprint-to-pdf\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"/home/ada/Documents/Vaults\r\n\u001b[39;2m │ … +4 lines\r\n └ 475983 bytes written to file /home/ada/\r\n\u001b[0m \u001b[2mDocuments/Vaults/SecondBrain/90 Library/\r\n\u001b[0m \u001b[2mProgramming/Web/Подготовка к экзамену по\r\n\u001b[0m \u001b[2mвеб-разработке.pdf\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mДобавлю ссылку на готовый HTML/PDF в\r\n существующий MOC экзамена и уберу устаревший\r\n список “недостающих” тем, потому что HTTP/3 и\r\n OAuth теперь закрыты отдельными заметками.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m Экзамен - Веб-ориентированные\r\n\u001b[2m \u001b[0mсистемы.md\r\n\r\n\u001b[2m────────────────────────────────────────────────\r\n\r\n• \u001b[0mMOC оказался действительно устаревшим только\r\n по сетевым недостающим темам. Оставляю его\r\n коротким: добавляю готовый файл подготовки и\r\n новые сетевые ссылки.\r\n\r\n\u001b[2m• \u001b[0mEdited 90 Library/Programming/Web/Экзамен -\r\nВеб-ориентированные системы.md (\u001b[32m+6\u001b[0m \u001b[31m-6\u001b[0m)\r\n \u001b[2m 6 \u001b[0m \u001b[38;2;205;214;244mcreated: 2026-06-01\r\n\u001b[39;48;5;52m \u001b[2m 7 \u001b[31;22m-\u001b[38;2;205;214;244;2mupdated: 2026-06-01\u001b[21X\r\n\u001b[39;48;5;22;22m \u001b[2m 7 \u001b[32;22m+\u001b[38;2;205;214;244mupdated: 2026-06-04\u001b[21X\r\n\u001b[0m \u001b[2m 8 \u001b[0m \u001b[38;2;205;214;244msource: \"[[Экзамен.pdf]]\"\u001b[15X\r\n\u001b[0m \u001b[2m ⋮\r\n\u001b[0m \u001b[2m18 \u001b[0m \u001b[38;2;147;153;178m|\u001b[38;2;205;214;244m :--- \u001b[38;2;147;153;178m|\u001b[38;2;205;214;244m :--- \u001b[38;2;147;153;178m|\u001b[38;2;205;214;244m :--- \u001b[38;2;147;153;178m|\r\n\u001b[39;48;5;52m \u001b[2m19 \u001b[31;22m-\u001b[38;2;147;153;178;2m|\u001b[38;2;205;214;244m **Сети и основы** \u001b[38;2;147;153;178m|\u001b[38;2;205;214;244m IPv4/v6, TCP, DNS,\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244m HTTP, OAuth 2.0 \u001b[38;2;147;153;178m|\u001b[38;2;205;214;244m [[IPv6]], [[TCP vs UD\r\n\u001b[39;22m \u001b[2m \u001b[38;2;205;214;244mP]], [[DNS]] \u001b[38;2;147;153;178m|\r\n\u001b[39;48;5;22;22m \u001b[2m \u001b[38;2;205;214;244;22mтке.html]]\u001b[30X\r\n\u001b[39m \u001b[2m26 \u001b[32;22m+\u001b[38;2;147;153;178m-\u001b[38;2;205;214;244m [[Подготовка к экзамену по веб-разрабо\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mтке.pdf]]\r\n\u001b[0m \u001b[2m27\u001b[42X\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mФинальная проверка: якоря HTML, PDF после\r\n пересборки, пустой Inbox, архивированные\r\n исходники и итоговый git status.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mList\u001b[0m python3 -c \"import re, pathlib;\r\n p=pathlib.Path(\\\"90 Library/\r\n Programming/\r\n Web/Подготовка к экзамену по веб-\r\n разработке.html\\\"); s=p.read_text();\r\n ids=set(re.findall(r\\\"id=\\\\\\\"([\"'^'\"\\\\\r\n \\\"]+)\\\\\\\"\\\", s));\r\n print(\\\"duplicate_ids\\\",\r\n len(re.findall(r\\\"id=\\\\\\\"([\"'^'\"\\\\\r\n \\\"]+)\\\\\r\n \\\"\\\", s))-len(ids)); print(\\\"ids\\\",\r\n len(ids), \\\"hash_links\\\", len(hrefs))\"\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mfile\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.pdf\"\r\n\u001b[39;2m └ 90 Library/Programming/Web/Подготовка к\r\n\u001b[0m \u001b[2mэкзамену по веб-разработке.pdf: PDF\r\n\u001b[0m \u001b[2mdocument, version 1.4, 8 page(s)\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m ls\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mla\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"00 Inbox\"\r\n\u001b[39;2m └ (empty)\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m ls\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mla\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"99 System/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mArchive/00_базовые_понятия.pdf\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"99\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mSystem/Archive/Подготовка к экзамену по\r\n\u001b[39;2m │ … +1 lines\r\n └ 99 System/Archive/00_базовые_понятия.pdf\r\n\u001b[0m \u001b[2m967.5K\r\n\u001b[0m \u001b[2m99 System/Archive/Подготовка к экзамену по\r\n\u001b[0m \u001b[2mВеб-Разработке.md 7.5K\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mSearch\u001b[0m *.md\u001b[2m in \u001b[0m.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m git status\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mshort\r\n\u001b[39;2m └ M .obsidian/workspace.json\r\n\u001b[0m \u001b[2m M \"90 Library/Programming/Web/Подготовка к\r\n … +3 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m M \"90 Library/Programming/Web/Экзамен -\r\n\u001b[0m \u001b[2mВеб-ориентированные системы.md\"\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m git diff\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mstat\r\n\u001b[39;2m └ .obsidian/workspace.json\r\n\u001b[0m \u001b[2m| 20 ++++++++------------\r\n … +7 lines (ctrl + t to view transcript)\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpdftotext\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.pdf\"\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m|\u001b[38;2;205;214;244m \u001b[38;2;137;180;250msed\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'1,80p'\r\n\u001b[39;2m └ 04.06.2026, 09:27\r\n\r\n … +76 lines (ctrl + t to view transcript)\r\n\r\n\u001b[0m \u001b[2mtextarea\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[36;22mgit status\u001b[0m в коротком виде не показывает новые\r\n Markdown-заметки, похоже, из-за правил\r\n отслеживания/ignore. Проверю явным режимом\r\n \u001b[36m--untracked-files=all\u001b[0m и наличие созданных\r\n файлов на диске.\r\n\r\n \u001b[2m M \"90 Library/Programming/Web/Подготовка к\r\n … +3 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m M \"90 Library/Programming/Web/Экзамен -\r\n\u001b[0m \u001b[2mВеб-ориентированные системы.md\"\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mList\u001b[0m HTTP, HTTPS и HTTP3.md\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m ls\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mla\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Networking/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПротоколы/HTTP, HTTPS и HTTP3.md\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mLibrary/Networking/Протоколы/URI, URL,\r\n\u001b[39;2m │ … +5 lines\r\n └ 90 Library/Networking/OAuth 2.0.md 2.5K\r\n\u001b[0m \u001b[2mURN.md 2.3K\r\n\u001b[0m \u001b[2m90 Library/Networking/Сетевые порты.md 1.9K\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mСозданные сетевые заметки уже находятся под\r\n git-tracking, поэтому не попали как untracked.\r\n Проверю, что индекс действительно обновлён в\r\n файле и не расходится с фактическим счётчиком.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m INDEX.md\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"HTTP, HTTPS и HTTP3|OAuth\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22m2.0|Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mВеб-Разработке|total: 504|Всего заметок \\|\r\n\u001b[39;2m │ … +1 lines\r\n └ 5 matches in 2F:\r\n\r\n … +12 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m|...\r\n\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m git diff\u001b[38;2;148;226;213m --\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"99 System/INDEX.md\"\r\n\u001b[39;2m └\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mPDF сейчас содержит стандартный chromium-\r\n header с датой. Пересоберу с флагом без\r\n header/footer, чтобы файл выглядел как\r\n самостоятельный конспект.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mchromium\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mheadless\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mno-sandbox\r\n\u001b[39;2m │ \u001b[38;2;147;153;178;22m--\u001b[38;2;235;160;172mdisable-gpu\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mno-pdf-header-footer\r\n\u001b[39;2m │ \u001b[38;2;147;153;178;22m--\u001b[38;2;235;160;172mprint-to-pdf\u001b[38;2;148;226;213m=\u001b[38;2;166;227;161m\"/home/ada/Documents/Vaults\r\n\u001b[39;2m │ … +4 lines\r\n └ 440516 bytes written to file /home/ada/\r\n\u001b[0m \u001b[2mDocuments/Vaults/SecondBrain/90 Library/\r\n\u001b[0m \u001b[2mProgramming/Web/Подготовка к экзамену по\r\n\u001b[0m \u001b[2mвеб-разработке.pdf\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mfile\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.pdf\"\r\n\u001b[39;2m └ 90 Library/Programming/Web/Подготовка к\r\n\u001b[0m \u001b[2mэкзамену по веб-разработке.pdf: PDF\r\n\u001b[0m \u001b[2mdocument, version 1.4, 8 page(s)\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m git status\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mshort\r\n\u001b[39;2m │ \u001b[38;2;147;153;178;22m--\u001b[38;2;235;160;172muntracked-files\u001b[38;2;148;226;213m=\u001b[38;2;205;214;244mall\r\n\u001b[39;2m └ M .obsidian/workspace.json\r\n\u001b[0m \u001b[2m M \"90 Library/Programming/Web/Подготовка к\r\n … +3 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m M \"90 Library/Programming/Web/Экзамен -\r\n\u001b[0m \u001b[2mВеб-ориентированные системы.md\"\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpdftotext\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.pdf\"\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m|\u001b[38;2;205;214;244m \u001b[38;2;137;180;250msed\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'1,24p'\r\n\u001b[39;2m └ Подготовка к экзамену по веб-разработке\r\n\u001b[0m \u001b[2mКраткий конспект по темам из файла\r\n … +23 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mDNS\r\n\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mГотово.\r\n\r\n Создал файл подготовки:\r\n\r\n - \u001b[36m90 Library/Programming/Web/Подготовка к\r\n\u001b[0m \u001b[36mэкзамену по веб-разработке.pdf\u001b[0m — 8 страниц,\r\n без chromium header/footer.\r\n\r\n Проинджестил блок 1 в подробные заметки:\r\n Также обновил MOC \u001b[36m90 Library/Programming/Web/\r\n\u001b[0m \u001b[36mЭкзамен - Веб-ориентированные системы.md\u001b[0m и \u001b[36m99\r\n\u001b[0m \u001b[36mSystem/INDEX.md\u001b[0m.\r\n\r\n Исходники перенёс в архив:\r\n\r\n - \u001b[36m99 System/Archive/00_базовые_понятия.pdf\r\n\u001b[0m - \u001b[36m99 System/Archive/Подготовка к экзамену по\r\n\u001b[0m \u001b[36mВеб-Разработке.md\r\n\r\n\u001b[0m Проверки: якоря HTML без битых ссылок и\r\n дублей, PDF пересобран, \u001b[36m00 Inbox\u001b[0m пустой. В git\r\n ещё висит изменённый \u001b[36m.obsidian/workspace.json\u001b[0m;\r\n я его не трогал.\r\n\r\n\u001b[2m─ Worked for 6m 32s ────────────────────────────\r\n\r\n\u001b[48;5;238;22m\u001b[48X\r\n\u001b[1;2m› \u001b[22;22mКакой лучше инструмент скачать для экспорта в\r\n pdf?\r\n И убери ссылки напрямую на Vault, просто\r\n заметки из vault впиши полностью в этот\r\n конспект, В короткой инфе - самое важно, в\r\n подробной - всё, что есть\r\n\r\n\u001b[0m\u001b[48X\r\n\u001b[2m• \u001b[0mПлан: сначала отвечу по инструменту экспорта с\r\n опорой на актуальные официальные источники,\r\n затем перепишу HTML так, чтобы подробные блоки\r\n содержали полный текст заметок из vault без\r\n прямых ссылок на \u001b[36m.md\u001b[0m. После этого пересоберу\r\n PDF и проверю якоря.\r\n\r\n\u001b[2m◦\u001b[0m \u001b[1mSearching the web\r\n\r\n\u001b[22;2m•\u001b[0m \u001b[1mSearched\u001b[0m Chrome headless print to pdf command\r\n official documentation\r\n\r\n\u001b[2m────────────────────────────────────────────────\r\n\r\n• \u001b[0mПо инструменту коротко: для этого кейса лучше\r\n не скачивать отдельный конвертер, а\r\n использовать уже установленный Chromium\r\n headless. Он официально поддерживает \u001b[36m--print-\r\n\u001b[0m \u001b[36mto-pdf\u001b[0m и \u001b[36m--no-pdf-header-footer\u001b[0m; для HTML с\r\n якорями и браузерной CSS-вёрсткой это самый\r\n предсказуемый вариант. \u001b[36mWeasyPrint\u001b[0m хорош для\r\n печатной CSS-вёрстки, но может отличаться от\r\n браузерного рендера; \u001b[36mpandoc\u001b[0m сильнее для\r\n Markdown/LaTeX-документов, а PDF обычно\r\n требует отдельный PDF engine. Сейчас переделаю\r\n конспект под твоё требование.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mwhich\u001b[38;2;205;214;244m pandoc\r\n\u001b[39;2m └ /usr/bin/pandoc\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"<section class=\u001b[38;2;245;194;231m\\\"\u001b[38;2;166;227;161mdetails\u001b[38;2;245;194;231m\\\"\u001b[38;2;166;227;161m|</\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22msection>|note-source|Vault:\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mProgramming/Web/Подготовка к экзамену по\r\n\u001b[39;2m │ … +1 lines\r\n └ 33 matches in 25F:\r\n\r\n … +83 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m 693: </section>\r\n\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m wc\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172ml\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ … +17 lines\r\n └ 698 веб-разработке.html\r\n\u001b[0m \u001b[2m123 HTTP3.md\r\n … +10 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m190 CUD.md\r\n\u001b[0m \u001b[2mΣ 2207\r\n\r\n────────────────────────────────────────────────\r\n │ \u001b[38;2;166;227;161;22mimport re\r\n\u001b[39;2m │ … +287 lines\r\n └ (no output)\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mПодробная часть заменена. Проверяю, что не\r\n осталось ссылок на \u001b[36m.md\u001b[0m, что якоря целые, и что\r\n все прежние короткие ссылки ведут в\r\n существующие подробные блоки.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'href=\"[^\"]+\\.md|\\.md\">|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mVault:|note-source|data-note-title'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mLibrary/Programming/Web/Подготовка к\r\n\u001b[39;2m │ … +1 lines\r\n … +32 lines (ctrl + t to view transcript)\r\n\r\n\u001b[0m \u001b[2m... +9\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m wc\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172ml\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 2591\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mList\u001b[0m python3 -c \"import re, pathlib;\r\n p=pathlib.Path(\\\"90 Library/\r\n Programming/\r\n Web/Подготовка к экзамену по веб-\r\n hrefs=re.findall(r\\\"href=\\\\\\\"#([\"'^'\"\\\\\r\n \\\"]+)\\\\\\\"\\\", s); print(\\\"missing\\\",\r\n len(re.findall(r\\\"id=\\\\\\\"([\"'^'\"\\\\\r\n \\\"]+)\\\\\r\n \\\"\\\", s))-len(ids)); print(\\\"ids\\\",\r\n len(ids), \\\"hash_links\\\", len(hrefs))\"\r\n \u001b[36mRead\u001b[0m Подготовка к экзамену по веб-\r\n разработке.html\r\n\r\n\u001b[2m────────────────────────────────────────────────\r\n\r\n• \u001b[36;22mpandoc\u001b[0m добавил одинаковые \u001b[36mid\u001b[0m на заголовки\r\n внутри вставленных заметок, это может ломать\r\n якоря. Уберу эти внутренние \u001b[36mid\u001b[0m, оставлю только\r\n наши управляемые якоря карточек и подробных\r\n\u001b[2m │ \u001b[38;2;166;227;161;22mfrom pathlib import Path\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mimport re\r\n\u001b[39;2m │ … +18 lines\r\n └ (no output)\r\n\r\n• \u001b[0mModel interrupted to submit steer\r\ninstructions.\r\n\r\n\u001b[48;5;238m\u001b[48X\r\n\u001b[1;2m› \u001b[22;22mИ фотки сломались, почини их тоже\r\n\r\n\u001b[0m\u001b[48X\r\n\u001b[2m• \u001b[0mПонял. Сейчас проверю все \u001b[36m<img src=...>\u001b[0m из\r\n HTML: какие пути не существуют относительно\r\n файла конспекта, исправлю относительные пути/\r\n кодирование и пересоберу PDF.\r\n\r\n\u001b[31;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpython3\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mc\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'import bs4;\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mprint(bs4.__version__)'\r\n\u001b[39;2m └ Traceback (most recent call last):\r\n\u001b[0m \u001b[2m File \"<string>\", line 1, in <module>\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mSearch\u001b[0m *.png\u001b[2m in \u001b[0m90 Library\r\n\r\n\u001b[31;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpython3\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m<<\u001b[38;2;166;227;161m'\u001b[38;2;203;166;247mPY\u001b[38;2;166;227;161m'\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom pathlib import Path\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom bs4 import BeautifulSoup\r\n\u001b[39;2m │ … +23 lines\r\n └ Traceback (most recent call last):\r\n\u001b[0m \u001b[2m File \"<stdin>\", line 2, in <module>\r\n\u001b[0m \u001b[2mModuleNotFoundError: No module named 'bs4'\r\n• \u001b[0mПричина уже видна: в \u001b[36m90 Library\u001b[0m нет ни одного\r\n локального изображения, а подробные заметки\r\n что исходных файлов картинок нет рядом с\r\n заметками. Сейчас найду, есть ли эти\r\n изображения в vault в других папках; если нет\r\n — уберу битые \u001b[36m<img>\u001b[0m из конспекта и оставлю\r\n подписи/текст, чтобы PDF был без сломанных\r\n картинок.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mSearch\u001b[0m *.png\u001b[2m in \u001b[0m.\r\n \u001b[36mSearch\u001b[0m *.png\u001b[2m in \u001b[0m.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpython3\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m<<\u001b[38;2;166;227;161m'\u001b[38;2;203;166;247mPY\u001b[38;2;166;227;161m'\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom pathlib import Path\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom urllib.parse import unquote\r\n\u001b[39;2m │ … +19 lines\r\n └ imgs 15\r\n\u001b[0m \u001b[2mMISS ../../Networking/Протоколы/\r\n … +34 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mhome/ada/Documents/Vaults/SecondBrain/90\r\n\u001b[0m \u001b[2mLibrary/Networking/3_NAT_image.png\r\n\r\n• \u001b[0mModel interrupted to submit steer\r\ninstructions.\r\n\r\n\u001b[48;5;238m\u001b[48X\r\n\u001b[1;2m› \u001b[22;22mИ фотки сломались, почини их тоже\r\n\r\n\u001b[0m\u001b[48X\r\n\u001b[2m• \u001b[0mПочиню именно изображения: перенаправлю все\r\n \u001b[36msrc\u001b[0m на реальные файлы в \u001b[36m99 System/Cache\u001b[0m, потом\r\n проверю существование каждого пути и\r\n пересоберу PDF.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'<img[^>]+src='\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mProgramming/Web/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 15 matches in 1F:\r\n\r\n … +22 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mNetworking/3_NAT_image.png\" /></p>\r\n\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m ls\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mla\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"99 System/Cache/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mIPv6_image.png\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"99 System/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mCache/5_IPv6_image.png\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"99 System/\r\n\u001b[39;2m │ … +13 lines\r\n └ 99 System/Cache/11_IPv6_image.png 5.9K\r\n\u001b[0m \u001b[2m99 System/Cache/12_IPv6_image.png 10.4K\r\n … +12 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m99 System/Cache/NAT_image.png 13.5K\r\n\u001b[0m \u001b[2m99 System/Cache/TCP vs UDP_2.png 9.5K\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mВсе нужные картинки есть в \u001b[36m99 System/Cache\u001b[0m;\r\n сломаны были только относительные пути после\r\n встраивания заметок. Меняю \u001b[36msrc\u001b[0m на реальные\r\n относительные пути от HTML.\r\n \u001b[2mmissing 0\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'<img[^>]+src='\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mProgramming/Web/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 15 matches in 1F:\r\n\r\n … +22 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mCache/3_NAT_image.png\" /></p>\r\n\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mList\u001b[0m python3 -c \"import re, pathlib;\r\n p=pathlib.Path(\\\"90 Library/\r\n Programming/\r\n Web/Подготовка к экзамену по веб-\r\n разработке.html\\\"); s=p.read_text();\r\n ids=set(re.findall(r\\\"id=\\\\\\\"([\"'^'\"\\\\\r\n \\\"]+)\\\\\\\"\\\", s));\r\n hrefs=re.findall(r\\\"href=\\\\\\\"#([\"'^'\"\\\\\r\n \\\"]+)\\\\\\\"\\\", s);\r\n print(\\\"missing_anchors\\\",\r\n sorted(set(hrefs)-ids));\r\n print(\\\"duplicate_ids\\\",\r\n len(re.findall(r\\\"id=\\\\\\\"([\"'^'\"\\\\\r\n \\\"]+)\\\\\r\n \\\"\\\", s))-len(ids))\"\r\n\r\n\u001b[2m────────────────────────────────────────────────\r\n\r\n• \u001b[0mКартинки уже указывают на реальные файлы.\r\n Остался технический мусор: \u001b[36mpandoc\u001b[0m оставил\r\n внутренние повторяющиеся \u001b[36mid\u001b[0m из встроенных\r\n заметок; уберу их, сохранив только якоря\r\n коротких карточек и основных подробных блоков.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpython3\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m<<\u001b[38;2;166;227;161m'\u001b[38;2;203;166;247mPY\u001b[38;2;166;227;161m'\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom pathlib import Path\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mimport re, collections\r\n\u001b[39;2m │ … +8 lines\r\n └ 4 cb1\r\n\u001b[0m \u001b[2m4 cb1-1\r\n … +126 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m2 cb2-12\r\n\u001b[0m \u001b[2m2 cb2-13\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m' id=\"'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mProgramming/Web/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 590 matches in 132F:\r\n\r\n … +424 lines (ctrl + t to view transcript)\r\n\r\n\u001b[0m \u001b[2m... +434\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mДубли \u001b[36mid\u001b[0m оказались у подсветки кода (\u001b[36mcb1\u001b[0m, \u001b[36mcb2\r\n\u001b[0m и т.п.), это не наши навигационные якоря.\r\n Убираю только эти служебные \u001b[36mid\u001b[0m и добавляю CSS,\r\n чтобы картинки не вылезали за страницу в HTML/\r\n PDF.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mperl\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172m0pi\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172me\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m's/ id=\"cb[^\"]+\"//g'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mLibrary/Programming/Web/Подготовка к\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mэкзамену по веб-разработке.html\"\r\n\u001b[39;2m └ (no output)\r\n\r\n• \u001b[0mEdited 90 Library/Programming/Web/Подготовка к\r\nэкзамену по веб-разработке.html (\u001b[32m+8\u001b[0m \u001b[31m-0\u001b[0m)\r\n \u001b[2m 91\r\n\u001b[48;5;22;22m \u001b[2m 92 \u001b[32;22m+\u001b[38;2;205;214;244m img {\u001b[30X\r\n\u001b[39m \u001b[2m 93 \u001b[32;22m+\u001b[38;2;205;214;244m display: block;\r\n\u001b[39m \u001b[2m 94 \u001b[32;22m+\u001b[38;2;205;214;244m max-width: 100%;\r\n\u001b[39m \u001b[2m 95 \u001b[32;22m+\u001b[38;2;205;214;244m height: auto;\r\n\u001b[39m \u001b[2m 96 \u001b[32;22m+\u001b[38;2;205;214;244m margin: 10px auto 14px;\r\n\u001b[39m \u001b[2m 97 \u001b[32;22m+\u001b[38;2;205;214;244m page-break-inside: avoid;\r\n\u001b[39m \u001b[2m 98 \u001b[32;22m+\u001b[38;2;205;214;244m }\r\n\u001b[39m \u001b[2m 99 \u001b[32;22m+\r\n\u001b[0m \u001b[2m100 \u001b[0m \u001b[38;2;205;214;244m .meta {\u001b[28X\r\n\r\n\u001b[39;2m────────────────────────────────────────────────\r\n\r\n• \u001b[0mТеперь проверяю: нет битых картинок, нет\r\n ссылок на \u001b[36m.md\u001b[0m, нет дублирующихся якорей.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpython3\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m<<\u001b[38;2;166;227;161m'\u001b[38;2;203;166;247mPY\u001b[38;2;166;227;161m'\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom pathlib import Path\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom urllib.parse import unquote\r\n\u001b[39;2m │ … +27 lines\r\n └ images 15 missing_images 0\r\n\u001b[0m \u001b[2mmissing_anchors ['cb1-1', 'cb1-10',\r\n … +53 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m'cb9-7', 'cb9-8', 'cb9-9']\r\n\u001b[0m \u001b[2mduplicate_ids 0\r\n\r\n\u001b[31;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'href=\"[^\"]+\\.md|\\.md\">|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mVault:'\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/Programming/Web/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mПодготовка к экзамену по\r\n\u001b[39;2m │ … +1 lines\r\n └ 0 matches for 'href=\"[^\"]+\\.md|\\.md\">|\r\n\u001b[0m \u001b[2mVault:'\r\n\r\n\u001b[32;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'<img[^>]+src='\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"90 Library/\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mProgramming/Web/Подготовка к экзамену по\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mвеб-разработке.html\"\r\n\u001b[39;2m └ 15 matches in 1F:\r\n\r\n … +22 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mCache/3_NAT_image.png\" /></p>\r\n\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mКартинки уже валидны, но после удаления\r\n служебных \u001b[36mid\u001b[0m остались служебные ссылки\r\n подсветки кода на \u001b[36m#cb...\u001b[0m. Они не относятся к\r\n оглавлению; убираю их, чтобы проверка якорей\r\n была чистой.\r\n\r\n\u001b[31m■ Conversation interrupted - tell the model what\r\nto do differently. Something went wrong? Hit `/\r\nfeedback` to report the issue.\r\n\u001b[0mToken usage: total=324 789 input=272 952 (+ 6 291 456 cached) output=51 837 (reasoning 11 493)\r\nTo continue this session, run \u001b[36mcodex resume 019e9134-c801-7193-bd43-df25eb59688b\r\n\r\n\u001b[38;5;244m╭─\u001b[30m \u001b[0m \u001b[38;5;31m \u001b[38;5;39;1m~\u001b[38;5;31;22m/\u001b[38;5;103mDoc\u001b[38;5;31m/\u001b[38;5;103mV\u001b[38;5;31m/\u001b[38;5;39;1mSecondBrain\u001b[38;5;31;22m \u001b[0mon \u001b[38;5;76m\u001b[38;5;178m \u001b[38;5;76m main \u001b[38;5;178m!2\r\n\u001b[38;5;244m╰─\u001b[38;5;76m❯\u001b[0m \r\n * Restored history at Fri Jun 05 2026 09:38:32 GMT+0300 (Москва, стандартное время)\r\n\r\n\u001b[38;5;76m❯\u001b[0m \u001b[32mcodex\r\n\u001b[0m Proxy enabled (127.0.0.1:2080)\r\nWARNING: failed to clean up stale arg0 temp dirs\r\n\u001b[2m│\r\n│ \u001b[0mSee full release notes:\r\n\u001b[2m│\r\n│ \u001b[36;4;22mhttps://github.com/openai/codex/releases/latest\u001b[39;24;2m │\r\n╰───────────────────────────────────────────────\r\n──╯\r\n\r\n╭────────────────────────────────────────────╮\r\n│ >_ \u001b[1;22mOpenAI Codex\u001b[22;2m (v0.135.0) │\r\n│ │\r\n│ model: \u001b[0mgpt-5.5 high\u001b[2m \u001b[36;22m/model\u001b[39;2m to change │\r\n│ directory: \u001b[0m~/Documents/Vaults/SecondBrain\u001b[2m │\r\n╰────────────────────────────────────────────╯\r\n\r\n\u001b[0m \u001b[1mTip:\u001b[0m NEW: Codex can now generate and use\r\n memories. Try it now with \u001b[36m/memories\r\n\r\n\u001b[39;48;5;238m\u001b[48X\r\n\u001b[1;2m› \u001b[22;22m\"00 Inbox/04062026_260604_171905.pdf\"\r\n Переработай эту заметку в Daily за 04.06.2026\r\n А потом прорефактори заметки, изменив формат\r\n названия на YYYY/MM/DD.MM.YY\r\n\r\n\u001b[0m\u001b[48X\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpwd\r\n\u001b[39;2m └ /home/ada/Documents/Vaults/SecondBrain\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m INDEX.md\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mfile\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'00 Inbox/04062026_260604_171905.pdf'\r\n\u001b[39;2m └ 00 Inbox/04062026_260604_171905.pdf: PDF\r\n └ .claude/\r\n\u001b[0m \u001b[2m.git/\r\n … +13 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2mCODEX.md 328B\r\n\u001b[0m \u001b[2mGEMINI.md 332B\r\n\r\n\u001b[32;1;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m ls\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mla\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'99 System/Template'\r\n\u001b[39;2m └ Base Note.md 96B\r\n\u001b[0m \u001b[2mContact Template.md 1.3K\r\n\u001b[0m \u001b[2mDaily Note.md 72B\r\n\u001b[0m \u001b[2mStudy Item.md 365B\r\n\u001b[0m \u001b[2mTravel Item.md 284B\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mПохоже, дневник сейчас лежит в \u001b[36m03 Journal/\r\n\u001b[0m \u001b[36mYYYY/MM - Month/DD.MM.YY - Weekday.md\u001b[0m.\r\n Запрошенный формат я трактую как переход к \u001b[36m03\r\n\u001b[39;2m └ /usr/bin/pdftotext\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m Daily Note.md\r\n \u001b[36mSearch\u001b[0m *.md\u001b[2m in \u001b[0m03 Journal\r\n\r\n\u001b[31;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m find .\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mmaxdepth\u001b[38;2;205;214;244m 3\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mtype\u001b[38;2;205;214;244m f\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172miname\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22m'*index*'\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mo\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172miname\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'*generate*'\r\n\u001b[39;2m └ rtk: rtk find does not support compound\r\n\u001b[0m \u001b[2mpredicates or actions (e.g. -not, -exec).\r\n\u001b[0m \u001b[2mUse `find` directly.\r\n\r\n\u001b[32;1;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m git status\u001b[38;2;147;153;178m --\u001b[38;2;235;160;172mshort\r\n\u001b[39;2m └ M .obsidian/daily-notes.json\r\n\u001b[0m \u001b[2m M .obsidian/workspace.json\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mШаблон Daily минимальный, без обязательного\r\n \u001b[36mstatus/title\u001b[0m; для дневников в индексе\r\n используется \u001b[36mtype: daily\u001b[0m. Сейчас вижу 65\r\n дневных файлов, все с суффиксом дня недели и\r\n папками \u001b[36mMM - Month\u001b[0m; это уже массовая правка.\r\n\r\n\u001b[2m•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m 08.05.26 - Friday.md\u001b[2m, \u001b[0m15.04.26 -\r\n Wednesday.md\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"\\[\\[[0-9]{2}\\.[0-9]{2}\\.[0-9]\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22m{2} -|03 Journal/[0-9]{4}/[0-9]{2} -|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mJournal/202[0-9]/[0-9]{2}\"\u001b[38;2;205;214;244m .\r\n\u001b[39;2m └ 139 matches in 2F:\r\n\r\n … +57 lines (ctrl + t to view transcript)\r\n\r\n\u001b[0m \u001b[2m... +89\r\n\r\n\u001b[32;1;22m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpdftotext\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mlayout\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'00\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mInbox/04062026_260604_171905.pdf'\u001b[38;2;205;214;244m -\r\n\u001b[39;2m └ Ежедневные задачи и\r\n\u001b[0m \u001b[2m рабочие новости\r\n … +88 lines (ctrl + t to view transcript)\r\n\u001b[0m \u001b[2m новую работу.\r\n\u001b[0m \r\n\r\n\u001b[2m────────────────────────────────────────────────\r\n\r\n• \u001b[0mПлан:\r\n\r\n \u001b[94m1. \u001b[0mСоздать Daily за \u001b[36m04.06.2026\u001b[0m из PDF: \u001b[36m03\r\n\u001b[0m \u001b[36mJournal/2026/06/04.06.26.md\u001b[0m.\r\n\r\n \u001b[94m2. \u001b[0mСохранить содержание как дневниковую\r\n запись, без пересказа «ради полноты», но с\r\n основными блоками из PDF.\r\n\r\n \u001b[94m3. \u001b[0mМассово переименовать существующие daily-\r\n файлы из формата \u001b[36mYYYY/MM - Month/DD.MM.YY -\r\n\u001b[0m \u001b[36mWeekday.md\u001b[0m в \u001b[36mYYYY/MM/DD.MM.YY.md\u001b[0m.\r\n все daily-заметки в \u001b[36m03 Journal\u001b[0m под новый\r\n формат \u001b[36mYYYY/MM/DD.MM.YY\u001b[0m?\r\n\r\n\u001b[2m────────────────────────────────────────────────\r\n\r\n\u001b[48;5;238;22m\u001b[48X\r\n\u001b[1;2m› \u001b[22;22mдавай\r\n\r\n\u001b[0m\u001b[48X\r\n\u001b[2m• \u001b[0mПодтверждение есть. Сначала соберу точный\r\n список переименований и проверю, нет ли\r\n конфликтов с уже существующими путями; затем\r\n внесу daily и обновлю ссылки.\r\n\r\n\u001b[2m• \u001b[1;22mUpdated Plan\r\n\u001b[22;2m └ \u001b[0m□ \u001b[36;1mСобрать список daily-файлов и конфликтов\r\n\u001b[0m \u001b[36;1mпереименования\r\n\u001b[0m □ \u001b[2mСоздать Daily за 04.06.2026 из PDF\r\n\u001b[0m □ \u001b[2mПереименовать daily-файлы в YYYY/MM/\r\n\u001b[0m \u001b[2mDD.MM.YY\r\n\u001b[0m □ \u001b[2mОбновить MOC и INDEX\r\n\u001b[0m □ \u001b[2mПроверить ссылки и git diff\r\n\r\n•\u001b[0m \u001b[1mExplored\r\n\u001b[22;2m └ \u001b[36;22mRead\u001b[0m Journal - MOC.md\r\n \u001b[36mList\u001b[0m 99 System\r\n \u001b[36mSearch\u001b[0m *.md\u001b[2m in \u001b[0m03 Journal\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mrtk\u001b[38;2;205;214;244m grep\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mn\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m\"^# |^aliases:|^- .* -\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22m(Monday|Tuesday|Wednesday|Thursday|Friday|\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mSaturday|Sunday)|source:\"\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'03 Journal'\r\n\u001b[39;2m └ (no output)\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mКонфликтов в текущем списке не видно по\r\n именам, но месячные папки тоже меняются с \u001b[36m11 -\r\n\u001b[0m \u001b[36mNovember\u001b[0m на \u001b[36m11\u001b[0m. Я буду менять только \u001b[36m03\r\n\u001b[0m \u001b[36mJournal\u001b[0m, плюс ссылки в MOC и индекс.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mpython3\u001b[38;2;205;214;244m - \u001b[38;2;148;226;213m<<\u001b[38;2;166;227;161m'\u001b[38;2;203;166;247mPY\u001b[38;2;166;227;161m'\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mfrom pathlib import Path\r\n\u001b[39;2m │ \u001b[38;2;166;227;161;22mimport re\r\n\u001b[39;2m │ … +20 lines\r\n └ (no output)\r\n\r\n────────────────────────────────────────────────\r\n\r\n• \u001b[0mСейчас создаю дневниковую запись за\r\n 04.06.2026. Содержание беру из PDF: задачи по\r\n УИР, рабочие договорённости, конференция,\r\n повышение, наблюдения и личная покупка.\r\n\r\n\u001b[32;1m•\u001b[0m \u001b[1mRan\u001b[0m \u001b[38;2;137;180;250mmkdir\u001b[38;2;147;153;178m -\u001b[38;2;235;160;172mp\u001b[38;2;205;214;244m \u001b[38;2;166;227;161m'03 Journal/2026/06'\r\n\u001b[39;2m └ (no output)\r\n\r\n• \u001b[1;22mAdded\u001b[0m 03 Journal/2026/06/04.06.26.md (\u001b[32m+52\u001b[0m \u001b[31m-0\u001b[0m)\r\n\u001b[48;5;22m \u001b[2m 1 \u001b[32;22m+\u001b[38;2;147;153;178m---\u001b[37X\r\n\u001b[39m \u001b[2m 2 \u001b[32;22m+\u001b[38;2;205;214;244mtype: daily\r\n\u001b[39m \u001b[2m 3 \u001b[32;22m+\u001b[38;2;205;214;244mcreated: 2026-06-04\r\n\u001b[39m \u001b[2m 4 \u001b[32;22m+\u001b[38;2;205;214;244mupdated: 2026-06-04\r\n\u001b[39m \u001b[2m 5 \u001b[32;22m+\u001b[38;2;205;214;244mtags:\r\n\u001b[39m \u001b[2m 6 \u001b[32;22m+\u001b[38;2;205;214;244m \u001b[38;2;147;153;178m-\u001b[38;2;205;214;244m daily\r\n\u001b[39m \u001b[2m 7 \u001b[32;22m+\u001b[38;2;205;214;244maliases: []\r\n\u001b[39m \u001b[2m 8 \u001b[32;22m+\u001b[38;2;147;153;178m---\r\n\u001b[39m \u001b[2m 9 \u001b[32;22m+\u001b[38;2;205;214;244m# 04.06.26\r\n\u001b[39m \u001b[2m10 \u001b[32;22m+\r\n\u001b[39m \u001b[2m11 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mЗадачи\r\n\u001b[39m \u001b[2m12 \u001b[32;22m+\r\n\u001b[39m \u001b[2m13 \u001b[32;22m+\u001b[38;2;147;153;178m-\u001b[38;2;205;214;244m Написать ВЮ вечером после 22:00.\r\n\u001b[39m \u001b[2m14 \u001b[32;22m+\u001b[38;2;147;153;178m-\u001b[38;2;205;214;244m Дождаться материалов от ВЮ.\r\n\u001b[39m \u001b[2m15 \u001b[32;22m+\r\n\u001b[39m \u001b[2m16 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mРабота\r\n\u001b[39m \u001b[2m17 \u001b[32;22m+\r\n\u001b[39m \u001b[2m18 \u001b[32;22m+\u001b[38;2;205;214;244mВЮ доволен моей работой и предложил взят\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mь главенствующую роль в проекте attendan\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mce вместо Артёма. Аргумент: ему проще ра\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mботать с тем, кто может прийти к нему ли\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mчно.\r\n\u001b[39m \u001b[2m19 \u001b[32;22m+\r\n\u001b[39m \u001b[2m20 \u001b[32;22m+\u001b[38;2;205;214;244mЕщё предложил новый проект: веб-приложен\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mие «Экскурсии МИФИ», где школы и другие\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mорганизации смогут регистрироваться на э\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mкскурсии в МИФИ.\r\n\u001b[39m \u001b[2m21 \u001b[32;22m+\r\n\u001b[39m \u001b[2m22 \u001b[32;22m+\u001b[38;2;205;214;244mСразу предложил делать на Rails 8, ВЮ да\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mл добро.\r\n\u001b[39m \u001b[2m23 \u001b[32;22m+\r\n\u001b[39m \u001b[2m24 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mКонференция\r\n\u001b[39m \u001b[2m25 \u001b[32;22m+\r\n\u001b[39m \u001b[2m26 \u001b[32;22m+\u001b[38;2;205;214;244mСъездил на infra.conf\u001b[38;2;147;153;178m`\u001b[38;2;205;214;244m26. Прикольная вещ\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mь, но ощущение как и на любых мероприяти\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mях Яндекса: кажется, что я слишком тупой\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m.\r\n\u001b[39m \u001b[2m27 \u001b[32;22m+\r\n\u001b[39m \u001b[2m28 \u001b[32;22m+\u001b[38;2;205;214;244mС другой стороны, вкусно поел.\r\n\u001b[39m \u001b[2m29 \u001b[32;22m+\r\n\u001b[39m \u001b[2m30 \u001b[32;22m+\u001b[38;2;205;214;244mВо время конференции позвонил Малькута и\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m сказал, что есть хорошие новости по пов\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mышению. Попросил написать ВЮ с вопросом\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mо встрече. Написал сразу, договорились в\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mстретиться в этот же день.\r\n\u001b[39m \u001b[2m31 \u001b[32;22m+\r\n\u001b[39m \u001b[2m32 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mЗарплата и премия\r\n\u001b[39m \u001b[2m33 \u001b[32;22m+\r\n\u001b[39m \u001b[2m34 \u001b[32;22m+\u001b[38;2;205;214;244mВЮ сказал, что с октября базовая ставка\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mвырастет на 30к. Получится 80к.\r\n\u001b[39m \u001b[2m35 \u001b[32;22m+\r\n\u001b[39m \u001b[2m36 \u001b[32;22m+\u001b[38;2;205;214;244mКак и в прошлом году, в конце года будут\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m делить проектные деньги. Значит, будет\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mпремия. ВЮ сказал, что учтёт моё рвение\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mи успехи в работе при расчёте премии.\r\n\u001b[39m \u001b[2m37 \u001b[32;22m+\r\n\u001b[39m \u001b[2m38 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mПро Лахина\r\n\u001b[39m \u001b[2m39 \u001b[32;22m+\r\n\u001b[39m \u001b[2m40 \u001b[32;22m+\u001b[38;2;205;214;244mПро Андрея интересно: ВЮ на него ругался\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22m, потому что тот имеет тенденцию пропада\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mть и не выполнять рабочие обязанности.\r\n\u001b[39m \u001b[2m41 \u001b[32;22m+\r\n\u001b[39m \u001b[2m42 \u001b[32;22m+\u001b[38;2;205;214;244mВ противовес мне, который даже берёт нов\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mую работу.\r\n\u001b[39m \u001b[2m43 \u001b[32;22m+\r\n\u001b[39m \u001b[2m44 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mНаблюдения\r\n\u001b[39m \u001b[2m45 \u001b[32;22m+\r\n\u001b[39m \u001b[2m46 \u001b[32;22m+\u001b[38;2;205;214;244mОчень странно: в метро постоянно запах с\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mвежей краски.\r\n\u001b[39m \u001b[2m47 \u001b[32;22m+\r\n\u001b[39m \u001b[2m48 \u001b[32;22m+\u001b[38;2;147;153;178m##\u001b[38;2;250;179;135m \u001b[38;2;148;226;213mПокупка\r\n\u001b[39m \u001b[2m49 \u001b[32;22m+\r\n\u001b[39m \u001b[2m50 \u001b[32;22m+\u001b[38;2;205;214;244mСпонтанно решил купить себе новое зарядн\r\n\u001b[39m \u001b[2m \u001b[38;2;205;214;244;22mое устройство: MagSafe, но с проводом.\r\n\u001b[39m \u001b[2m51 \u001b[32;22m+\r\n\u001b[39m \u001b[2m52 \u001b[32;22m+\u001b[38;2;205;214;244mУдобно.\r\n\u001b[0m\u001b[48X\r\n•\u001b[1C\u001b[2mWo\u001b[0mr\u001b[1mking\u001b[1C\u001b[22;2m(55s • esc to interrupt)\r\n\r\n\u001b[48;5;238;22m \u001b[47X\r\n\u001b[1m›\u001b[22m \u001b[2mWrite tests for @filename\r\n\u001b[22m \r\n\u001b[0m\u001b[2X\u001b[2C\u001b[38;2;246;226;183mgpt-5.5 high\u001b[39;2m · \u001b[38;2;171;223;167;22m~/Documents/Vaults/SecondBrain\u001b[1X\u001b[2A\u001b[45D\u001b[0m",
|
||
"rows": 34,
|
||
"scrollLine": -1
|
||
}
|
||
}
|
||
},
|
||
"pinned": true,
|
||
"icon": "terminal",
|
||
"title": "Terminal: ⠸ SecondBrain"
|
||
}
|
||
},
|
||
{
|
||
"id": "1ef10fc51fc1f1e1",
|
||
"type": "leaf",
|
||
"pinned": true,
|
||
"state": {
|
||
"type": "git-view",
|
||
"state": {},
|
||
"pinned": true,
|
||
"icon": "git-pull-request",
|
||
"title": "Source Control"
|
||
}
|
||
},
|
||
{
|
||
"id": "394fb6e28d09b8f3",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "all-properties",
|
||
"state": {
|
||
"sortOrder": "frequency",
|
||
"showSearch": false,
|
||
"searchQuery": ""
|
||
},
|
||
"icon": "lucide-archive",
|
||
"title": "All properties"
|
||
}
|
||
},
|
||
{
|
||
"id": "e51be669e29cd994",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "backlink",
|
||
"state": {
|
||
"file": "90 Library/Programming/Web/Основы HTML (структура, таблицы, формы).md",
|
||
"collapseAll": false,
|
||
"extraContext": false,
|
||
"sortOrder": "alphabetical",
|
||
"showSearch": false,
|
||
"searchQuery": "",
|
||
"backlinkCollapsed": false,
|
||
"unlinkedCollapsed": true
|
||
},
|
||
"icon": "links-coming-in",
|
||
"title": "Backlinks for Основы HTML (структура, таблицы, формы)"
|
||
}
|
||
},
|
||
{
|
||
"id": "86ea4ddeaafff092",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "outgoing-link",
|
||
"state": {
|
||
"file": "90 Library/Programming/Ruby On Rails/Sidekiq - основа работы.md",
|
||
"linksCollapsed": false,
|
||
"unlinkedCollapsed": true
|
||
},
|
||
"icon": "links-going-out",
|
||
"title": "Outgoing links from Sidekiq - основа работы"
|
||
}
|
||
},
|
||
{
|
||
"id": "a0ffd3bace615787",
|
||
"type": "leaf",
|
||
"state": {
|
||
"type": "outline",
|
||
"state": {
|
||
"file": "00 Inbox/Экзамен - MOC.md",
|
||
"followCursor": false,
|
||
"showSearch": false,
|
||
"searchQuery": ""
|
||
},
|
||
"icon": "lucide-list",
|
||
"title": "Outline of Экзамен - MOC"
|
||
}
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"direction": "horizontal",
|
||
"width": 482
|
||
},
|
||
"left-ribbon": {
|
||
"hiddenItems": {
|
||
"switcher:Меню быстрого перехода": false,
|
||
"graph:Граф": false,
|
||
"canvas:Создать новый холст": false,
|
||
"daily-notes:Сегодняшняя заметка": false,
|
||
"templates:Вставить шаблон": false,
|
||
"command-palette:Открыть палитру команд": false,
|
||
"markdown-importer:Импорт Markdown-файлов": false,
|
||
"random-note:Открыть случайную заметку": false,
|
||
"audio-recorder:Начать/остановить запись": false,
|
||
"bases:Создать новую базу": false,
|
||
"obsidian-excalidraw-plugin:Создать новый чертеж": false,
|
||
"omnisearch:Omnisearch": false,
|
||
"templater-obsidian:Templater": false,
|
||
"obsidian-git:Open Git source control": false,
|
||
"terminal:Open terminal": false,
|
||
"3d-graph-new:Global 3D Graph": false
|
||
}
|
||
},
|
||
"active": "06940eb960fc1db5",
|
||
"lastOpenFiles": [
|
||
"03 Journal/2026/06/04.06.26.md",
|
||
"03 Journal/2026/06",
|
||
"AGENTS.md",
|
||
"90 Library/Programming/Web/Основы веб-разработки.md",
|
||
"90 Library/Programming/Web/Основы Bootstrap.md",
|
||
"90 Library/Programming/Web/Экзамен - Веб-ориентированные системы.md",
|
||
"90 Library/Programming/Web/Подготовка к экзамену по веб-разработке.pdf",
|
||
"90 Library/Programming/Web/XXnoTYCY",
|
||
"90 Library/Programming/Web/XXUPzo1Z",
|
||
"90 Library/Programming/Programming - MOC.md",
|
||
"99 System/Archive/00_базовые_понятия.pdf",
|
||
"99 System/Archive/Подготовка к экзамену по Веб-Разработке.md",
|
||
"90 Library/Networking/Веб-аутентификация и авторизация.md",
|
||
"90 Library/Programming/Web/Подготовка к экзамену по веб-разработке.html",
|
||
"90 Library/Programming/Web/Адаптивность, Flexbox и Grid.md",
|
||
"90 Library/Programming/Web/Основы HTML (структура, таблицы, формы).md",
|
||
"90 Library/Programming/Web/Основы, селекторы и блочная модель.md",
|
||
"90 Library/Networking/OAuth 2.0.md",
|
||
"90 Library/Networking/Подсети и маска подсети.md",
|
||
"90 Library/Networking/Сетевые порты.md",
|
||
"90 Library/Networking/Протоколы/URI, URL, URN.md",
|
||
"90 Library/Networking/Протоколы/HTTP, HTTPS и HTTP3.md",
|
||
"00 Inbox/Подготовка к экзамену по Веб-Разработке.md",
|
||
"00 Inbox/00_базовые_понятия.pdf",
|
||
"99 System/Archive/Основные команды git.md",
|
||
"99 System/Archive/Подготовка к защите ЛР2.md",
|
||
"99 System/Archive/Подготовка к экзамену по Экономическому анализу.md",
|
||
"90 Library/Other/Сканер отпечатка пальцев.md",
|
||
"00 Inbox/Краткая теория с важными формулами по нечетким выводам.sync-conflict-20260603-140755-23DMR5O.md",
|
||
"90 Library/Programming/Python/Работа с формами и CUD.md",
|
||
"90 Library/Programming/Python/Представления, шаблоны и CBV.md",
|
||
"90 Library/Programming/Python/Модели и ORM.md",
|
||
"90 Library/Programming/Python/Базовый синтаксис и основы.md",
|
||
"04 Tools/StudyTracker/Courses",
|
||
"04 Tools/StudyTracker/Books",
|
||
"04 Tools/SocialBase/04 Другие",
|
||
"99 System/Cache/Pasted image 20260526204029.png",
|
||
"99 System/Cache/Pasted image 20260526203848.png",
|
||
"99 System/Cache/Pasted image 20260526203807.png",
|
||
"99 System/Cache/Pasted image 20260521134256.png",
|
||
"99 System/Cache/Pasted image 20260521134238.png",
|
||
"99 System/Cache/Pasted image 20260521134228.png",
|
||
"99 System/Cache/Pasted image 20260521134207.png",
|
||
"99 System/Cache/Pasted image 20260521133832.png",
|
||
"99 System/Cache/Pasted image 20260521133824.png",
|
||
"99 System/Cache/Pasted image 20260521133344.png",
|
||
"00 Inbox/Untitled.canvas"
|
||
]
|
||
} |