Pisałem instrukcję do SunGo DB Designera i chciałem zobaczyć, jak wygląda „na czysto”. Otworzyłem ją w przeglądarce Markdowna ze Sklepu Microsoft. Działała, ale czytało się to trochę jak skan kserówki z lat 90. Do tego w bocznym menu siedziała reklama, która usilnie chciała mi policzyć zyski i straty na kryptowalutach. Dzięki, ale moje jedyne kryptowaluty to drobniaki w słoiku.
Uznałem, że szybciej będzie napisać własną przeglądarkę, niż dalej się z tamtą męczyć. Tak powstał SunMD View.
Co to umie?
- Spis treści z boku. Sam się buduje z nagłówków i podświetla rozdział, w którym aktualnie jesteś. Koniec z przewijaniem 40 ekranów, żeby znaleźć „Najczęstsze problemy”.
- Szukanie (Ctrl+F) z licznikiem trafień, np. „1/33”. Teraz wiadomo, ile razy w instrukcji pada słowo „tabela” (za dużo).
- Samo się odświeża. Zapisujesz plik w edytorze, a w podglądzie po sekundzie widać zmiany i zostajesz w tym samym miejscu dokumentu.
- Kolorowanie kodu w blokach
```go,```js,```sqli całej reszcie. - Trzy motywy:
- Jasny: biały jak GitHub,
- SunGo klasyczny: morski pasek, jak w Designerze,
- Ciemny SunGo: czerń i zieleń
#32CD32, dla nocnych marków.
- Linki działają. Kotwice
#rozdzialprzewijają do rozdziału, linki do innych.mdotwierają się w oknie (jest przycisk Wstecz),
ahttptrafia do przeglądarki. - Obrazki z folderu dokumentu się wyświetlają.
- Druk i eksport do HTML: jeden plik ze stylami w środku, można wysłać komuś, kto nie wie, co to Markdown.
- Większa i mniejsza czcionka (Ctrl + kółko), lista ostatnich plików, przeciąganie pliku na okno.
- PL i EN.
- Zero reklam. Kryptowaluty licz sobie sam.

Ciekawostka z placu budowy, czyli „dlaczego wszystko jest żółte?!”
Po pierwszej wersji stwierdziłem, że kolory „męczą oczy” i że wszędzie jest beż. Przerobiłem motywy: biel jak na GitHubie,
zieleń SunGo, wszystko jak trzeba. Uruchamiam, a tam znowu beż. Biały #ffffff wyglądał jak kartka, którą ktoś zostawił
na rok na parapecie.
Winowajca: profil kolorów monitora Samsung Natural Color Pro 1.0 ICM. Edge (a więc i WebView2, na którym stoi program) od jakiejś aktualizacji „poprawia” kolory przez ten profil, i biel robi się żółta. W samym Edge'u miałem to dawno wyłączone flagą, ale programy na WebView2 nie biorą flag z Edge'a. Każdy ma swoje ustawienia.
Rozwiązałem to jedna linijka w main.go:
Kod: Zaznacz cały
os.Setenv("WEBVIEW2_ADDITIONAL_BROWSER_ARGUMENTS", "--force-color-profile=srgb")Biel znowu jest biała. Jeśli Wasze programy na WebView2 też dziwnie żółkną, możecie wziąć to na siebie.
Pod maską ukryłem to co zawsze 
- Go + webview_go (WebView2), bez Wailsa i bez Node'a,
- goldmark zamienia Markdown na HTML (tabele, listy zadań, przypisy), chroma koloruje kod,
- cały interfejs siedzi w środku
.exe, więc to jeden plik bez instalatora, - identyfikatory nagłówków są tworzone jak na GitHubie, razem z ą, ę, ż, ź, więc linki z README działają tak samo jak w repo,
- ustawienia trafiają do
%APPDATA%\SunMDView.
Skróty dla leniwych
| Skrót | Co robi |
|---|---|
| Ctrl+O | otwórz plik |
| Ctrl+F lub F3 | szukaj (następne trafienie) |
| F5 | odśwież |
| Ctrl+B | pokaż lub ukryj spis treści |
| Ctrl + , - , 0 | wielkość czcionki |
| Alt + strzałka w lewo | wstecz |
| Ctrl+S | zapisz jako HTML |
| Ctrl+P | drukuj |
Wersja: 01.00.00-beta-01, czyli beta. Coś pewnie jeszcze wyskoczy zza krzaka.
Uwagi, pomysły i zgłoszenia błędów piszcie w tym wątku. Pochwały też przyjmuję.


