https://github.com/SoptikHa2/desed Skip to content Navigation Menu Toggle navigation Sign in * Product + Actions Automate any workflow + Packages Host and manage packages + Security Find and fix vulnerabilities + Codespaces Instant dev environments + GitHub Copilot Write better code with AI + Code review Manage code changes + Issues Plan and track work + Discussions Collaborate outside of code Explore + All features + Documentation + GitHub Skills + Blog * Solutions By size + Enterprise + Teams + Startups By industry + Healthcare + Financial services + Manufacturing By use case + CI/CD & Automation + DevOps + DevSecOps * Resources Topics + AI + DevOps + Security + Software Development + View all Explore + Learning Pathways + White papers, Ebooks, Webinars + Customer Stories + Partners * Open Source + GitHub Sponsors Fund open source developers + The ReadME Project GitHub community articles Repositories + Topics + Trending + Collections * Enterprise + Enterprise platform AI-powered developer platform Available add-ons + Advanced Security Enterprise-grade security features + GitHub Copilot Enterprise-grade AI features + Premium Support Enterprise-grade 24/7 support * Pricing Search or jump to... Search code, repositories, users, issues, pull requests... Search [ ] Clear Search syntax tips Provide feedback We read every piece of feedback, and take your input very seriously. [ ] [ ] Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Name [ ] Query [ ] To see all available qualifiers, see our documentation. Cancel Create saved search Sign in Sign up Reseting focus You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert {{ message }} SoptikHa2 / desed Public * Notifications You must be signed in to change notification settings * Fork 22 * Star 1.1k Debugger for Sed: demystify and debug your sed scripts, from comfort of your terminal. soptik.tech/articles/building-desed-the-sed-debugger.html License GPL-3.0 license 1.1k stars 22 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings * Code * Issues 6 * Pull requests 0 * Actions * Projects 0 * Security * Insights Additional navigation options * Code * Issues * Pull requests * Actions * Projects * Security * Insights SoptikHa2/desed This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository. master BranchesTags Go to file Code Folders and files Name Name Last commit message Last commit date Latest commit History 145 Commits .vscode .vscode aur aur img img sed sed src src .gitignore .gitignore Cargo.lock Cargo.lock Cargo.toml Cargo.toml LICENSE LICENSE README.md README.md desed.1 desed.1 publish.sh publish.sh View all files Repository files navigation * README * GPL-3.0 license Desed Demystify and debug your sed scripts, from comfort of your terminal. desed usage example Desed is a command line tool with beautiful TUI that provides users with comfortable interface and practical debugger, used to step through complex sed scripts. Some of the notable features include: * Preview variable values, both of them! * See how will a substitute command affect pattern space before it runs * Step through sed script - both forward and backwards! * Place breakpoints and examine program state * Hot reload and see what changes as you edit source code * Its name is a palindrome Install Alpine Linux aports/testing/desed Arch Linux Via AUR: desed-git or desed as stable version. DragonFly BSD pkg install desed Fedora dnf install desed FreeBSD pkg install desed Void Linux xbps-install -S desed Source git clone https://github.com/soptikha2/desed cd desed cargo install --path . cp "desed.1" "$(manpath | cut -d':' -f1)/man1" Cargo cargo install desed Precompiled binaries See releases. Dependencies: Development: rust, cargo (>= 1.38.0) Runtime: sed (GNU version, >= 4.6) (desed works on BSD if you installed gsed) Controls * Mouse scroll to scroll through source code, click on line to toggle breakpoint * j, k, g, G, just as in Vim. Prefixing with numbers works too. * b to toggle breakpoint (prefix with number to toggle breakpoint on target line) * s to step forward, a to step backwards * r to run to next breakpoint or end of script, R to do the same but backwards * l to instantly reload code and continue debugging in the exactly same place as before * q to quit FAQ How does it work? GNU sed actually provides pretty useful debugging interface, try it yourself with --debug flag. However the interface is not interactive and I wanted something closer to traditional debugger. I've written something here. Does it really work? Depends. Sed actually doesn't tell me which line number is it currently executing, so I have to emulate parts of sed to guess that. Which might not be bulletproof. But it certainly worked good enough to debug tetris without issues. Why sed?? Sed is the perfect programming language, especially for graph problems. It's plain and simple and doesn't clutter your screen with useless identifiers like if, for, while, or int. Furthermore since it doesn't have things like numbers, it's very simple to use. But why? I wanted to program in sed but it lacked good tooling up to this point, so I had to do something about it. Why? Because it's the standard stream editor for filtering and transforming text. And someone wrote tetris in it! What is the roadmap for future updates? I would like to introduce syntax highlighting and add this tool to standard repositories of all major distributions. Is this a joke? I thought it was. But apparently it's actually useful for some people. Other projects * video summarizer, a tool and browser extensions that determines if people in video are currently talking or not, and speeds up the video accordingly. Great for long lecture videos for skipping time spent writing on a whiteboard. About Debugger for Sed: demystify and debug your sed scripts, from comfort of your terminal. soptik.tech/articles/building-desed-the-sed-debugger.html Topics rust unix sed tui-rs Resources Readme License GPL-3.0 license Activity Stars 1.1k stars Watchers 14 watching Forks 22 forks Report repository Releases 7 Fixed BSD file watch support on armv7 Latest Oct 14, 2022 + 6 releases Packages 0 No packages published Contributors 8 * @SoptikHa2 * @suve * @stig * @icy * @pbsds * @oinksoft * @ignatenkobrain * @a-kenji Languages * Rust 84.6% * sed 9.9% * Roff 2.8% * Shell 2.7% Footer (c) 2024 GitHub, Inc. Footer navigation * Terms * Privacy * Security * Status * Docs * Contact * Manage cookies * Do not share my personal information You can't perform that action at this time.