Desed: Debugger pro Sed
Desed je nástroj pro příkazový řádek s krásným TUI, který poskytuje uživatelům pohodlné rozhraní a praktický debugger pro programovací jazyk sed.
Proč sed?
Sed je perfektní programovací jazyk, zejména pro problémy s grafy.
Je jednoduchý a nepoužívá zbytečné konstrukce jako while
,
for
, if
nebo int
. Kromě toho, protože
nemá věci jako čísla, je velmi jednoduché ho používat. Z nějakého
důvodu mu ale až doteď scházel debugger.
Debugger
Má hromadu funkcí jako:
- Zobrazuje hodnoty proměnných - obou dvou!
- Zobrazuje co všechno zachytil regex
- Umožňuje krokovat program - dopředu i dozadu
- Podporuje breakpointy
- Hot reload - po stisknutí l přenačte celý zdrojový kód a obnoví poslední pozici debuggeru
- Je to open source: SoptikHa2/Desed
Instalace
Ze zdrojáku
Z githubu, případně je k dispozici ke stažení níže:
git clone https://github.com/soptikha2/desed cd desed cargo install --path .
Pomocí cargo
cargo install desed
Pomocí AUR
desed-git nebo desed (stabilní verze)
Z předkompilovaného souboru
Nebo prostě spusťte předkompilovaný soubor ze složky
releases/
(pouze pro x86_64 linux)
Spuštění
Ke spuštění je potřeba:
Development, kompilace: git
, cargo
Runtime: sed
(GNU verze,> = 4.6)
Ovládání
- Posouvání myši scrolluje zdrojový kód, kliknutím na řádek se přepíná breakpoint
- j, k, g, G, stejně jako ve Vimu. Fungují i čísla před příkazy.
- b přepne breakpoint (číslo před b přepne breakpoint na daném řádku)
- s krok vpřed, a krok zpátky
- r spustí program až do dalšího breakpointu, R funguje stejně, ale nazpátek
- l okamžitě přenačte zdroják a zkusí co nejvěrněji obnovit stejný state jako byl předtím
- q vypne program
FAQ
Jak to funguje?
GNU sed ve skutečnosti poskytuje docela užitečné debuggovací rozhraní,
zkuste to sami s flagem --debug
.
Není to ale interaktivní a chtěl jsem něco blíže k tradičnímu
debuggeru.
Opravdu to funguje?
Občas. Sed mi vlastně neříká, který řádek zdrojáku právě spouští, takže musím emulovat části sedu, abych to uhodl. Což nemusí fungovat vždycky. Ale rozhodně to fungovalo dost dobře na to, aby bylo možné ladit tetris bez problémů.
Ale proč?
Chtěl jsem programovat v sedu, ale do té doby mi chyběl debugger, takže jsem s tím musel něco udělat.
Proč?
Protože je to standardní editor pro filtrování a transformaci textu. A někdo v něm napsal tetris!
Co bude v další verzi?
Rád bych udělal syntax highlighting a přidal Desed do repozitářů všech velkých dister.
Galerie
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 2x (1.36 MB)
Aplikace je včetně zdrojových kódů