feat: closed box with right wall and padded rows
This commit is contained in:
1 parent
ef0dc08bcd
commit
c0a47bc99b
2 files changed
+25
-26
No files matched your search
@@ -42,19 +42,19 @@ autoPriority.exe -dry-run
|
||||
События одного скана выводятся боксом во временной папке Windows: **`%TEMP%\autopriority.log`**. При каждом запуске файл очищается. Шапка подгоняется под самую длинную строку. Порядок групп строгий: PROMOTE -> DEMOTE -> SKIP -> BLOCK. Пустой скан ничего не пишет.
|
||||
|
||||
```text
|
||||
┌─ 04.10.2026 19:33:39 ─────────────────────────────
|
||||
├ GAME MODE ON — EoCApp.exe (PID 6200) RSS=2.2GB, NORMAL -> HIGH
|
||||
│
|
||||
├ DEMOTE
|
||||
│ ├ Hermes.exe (PID 10220) RSS=166MB, ABOVE_NORMAL -> IDLE
|
||||
│ └ librewolf.exe (PID 6216) RSS=524MB, HIGH -> IDLE
|
||||
│
|
||||
├ SKIP
|
||||
│ └ csrss.exe (PID 524): OpenProcess(524) failed: Access is denied.
|
||||
│
|
||||
├ BLOCK
|
||||
│ └ winlogon.exe (PID 792): OpenProcess(792) failed: Access is denied.
|
||||
└───────────────────────────────────────────────────
|
||||
┌─ 04.10.2026 19:33:39 ───────────────────────────────────────────────┐
|
||||
├ GAME MODE ON — EoCApp.exe (PID 6200) RSS=2.2GB, NORMAL -> HIGH │
|
||||
│ │
|
||||
├ DEMOTE │
|
||||
│ ├ Hermes.exe (PID 10220) RSS=166MB, ABOVE_NORMAL -> IDLE │
|
||||
│ └ librewolf.exe (PID 6216) RSS=524MB, HIGH -> IDLE │
|
||||
│ │
|
||||
├ SKIP │
|
||||
│ └ csrss.exe (PID 524): OpenProcess(524) failed: Access is denied. │
|
||||
│ │
|
||||
├ BLOCK │
|
||||
│ └ winlogon.exe (PID 792): OpenProcess(792) failed: Access is denied.│
|
||||
└─────────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
Триггер игрового режима не дублируется в PROMOTE: его исход уже вписан в строку `GAME MODE ON` (`NORMAL -> HIGH`, `уже HIGH` или `в блоклисте`). Выключение режима — секция `GAME MODE OFF — восстановление`, восстановленные процессы идут в PROMOTE/DEMOTE как обычно.
|
||||
@@ -62,11 +62,11 @@ autoPriority.exe -dry-run
|
||||
Запуск программы оформлен отдельным боксом START:
|
||||
|
||||
```text
|
||||
┌─ 04.10.2026 19:58:36 ─────────────────────────────
|
||||
├ START
|
||||
│ ├ started (mem=512MB, game-mem=2.0GB, interval=1m0s, dry-run=false)
|
||||
│ └ own priority set to IDLE
|
||||
└───────────────────────────────────────────────────
|
||||
┌─ 04.10.2026 19:58:36 ──────────────────────────────────────────────┐
|
||||
├ START │
|
||||
│ ├ started (mem=512MB, game-mem=2.0GB, interval=1m0s, dry-run=false)│
|
||||
│ └ own priority set to IDLE │
|
||||
└────────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
Боксы разделены пустой строкой.
|
||||
|
||||
@@ -737,17 +737,16 @@ func renderBox(head string, groups []logGroup) {
|
||||
}
|
||||
}
|
||||
ts := time.Now().Format("02.01.2006 15:04:05")
|
||||
top := "┌─ " + ts + " "
|
||||
if runeCount(top) < width {
|
||||
top += strings.Repeat("─", width-runeCount(top))
|
||||
} else {
|
||||
width = runeCount(top)
|
||||
base := "┌─ " + ts + " "
|
||||
if width < runeCount(base) {
|
||||
width = runeCount(base)
|
||||
}
|
||||
logRaw(top)
|
||||
// Закрытый бокс: правая стенка у каждой строки.
|
||||
logRaw(base + strings.Repeat("─", width-runeCount(base)) + "┐")
|
||||
for _, line := range lines {
|
||||
logRaw(line)
|
||||
logRaw(line + strings.Repeat(" ", width-runeCount(line)) + "│")
|
||||
}
|
||||
logRaw("└" + strings.Repeat("─", width-1))
|
||||
logRaw("└" + strings.Repeat("─", width-1) + "┘")
|
||||
logRaw("")
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user