{"slug": "combobulate", "name": "Combobulate", "category": "editors", "category_name": "Editors and IDEs", "description": "", "recommenders": 3, "commenters": 4, "warners": 0, "score": 2.924, "rising": 0.35, "first": "2026-02-19", "latest": "2026-08-07", "why": "This is one of the things Combobulate [0] tries to solve by using the output of tree-sitter.", "why_is_quote": true, "has_verdict": false, "sentiment": {"recommend": 3, "neutral": 1, "compare": 0, "warn": 0}, "spark": [0, 0, 0, 0, 2, 0, 0, 0, 0, 1, 0, 0], "listed": true, "loved": [], "caveat": "", "short_quote": "This is one of the things Combobulate [0] tries to solve by using the output of tree-sitter.", "kind": "", "icon": true, "domain": null, "github_repo": "github.com/mickeynp/combobulate", "official_url": "https://github.com/mickeynp/combobulate", "pricing": "", "aliases": ["Combobulate", "combobulate"], "verdict": null, "praise": [{"label": "", "summary": "", "quotes": [{"id": 787366000, "item_id": 49210375, "url": "https://news.ycombinator.com/item?id=49210375", "by": "mickeyp", "date": "2026-08-07", "stance": "recommend", "quote": "This is one of the things Combobulate [0] tries to solve by using the output of tree-sitter.", "excerpt": "This is one of the things Combobulate [0] tries to solve by using the output of tree-sitter. Simple breadcrumbs are easy enough to do (your cursor has a clear parental lineage) but much harder to do if you want to retain semantic things, or do interesting things with (say) sibling nodes. You can see the treeview it generates in the GIFs in the link below [0] https://github.com/mickeynp/combobulate", "context": "", "use_case": "structural code navigation", "switched_from": "", "story": "Ask HN: Do modern code editors need stronger visual hierarchy?"}, {"id": 756640881, "item_id": 47290055, "url": "https://news.ycombinator.com/item?id=47290055", "by": "dataangel", "date": "2026-03-07", "stance": "recommend", "quote": "https://github.com/mickeynp/combobulate", "excerpt": "As always emacs has it already https://github.com/mickeynp/combobulate", "context": "", "use_case": "", "switched_from": "", "story": "Ki Editor - an editor that operates on the AST"}, {"id": 756597680, "item_id": 47287355, "url": "https://news.ycombinator.com/item?id=47287355", "by": "reedlaw", "date": "2026-03-07", "stance": "recommend", "quote": "https://github.com/mickeynp/combobulate", "excerpt": "https://github.com/mickeynp/combobulate", "context": "", "use_case": "Structural editing in Emacs", "switched_from": "", "story": "Ki Editor - an editor that operates on the AST"}]}], "caveats": [], "who": [], "tags": [], "use_cases": ["structural editing in emacs", "structural code navigation"], "compared": [], "makers": [], "threads": [{"url": "https://news.ycombinator.com/item?id=47286311", "title": "Ki Editor - an editor that operates on the AST", "mentions": 2}, {"url": "https://news.ycombinator.com/item?id=49210083", "title": "Ask HN: Do modern code editors need stronger visual hierarchy?", "mentions": 1}, {"url": "https://news.ycombinator.com/item?id=47075934", "title": "Choosing a Language Based on Its Syntax?", "mentions": 1}], "sentiment_by_month": {"2025-11": {}, "2025-12": {}, "2026-01": {}, "2026-02": {"neutral": 1}, "2026-03": {"recommend": 2}, "2026-04": {}, "2026-05": {}, "2026-06": {}, "2026-07": {}, "2026-08": {"recommend": 1}, "2026-09": {}, "2026-10": {}}, "quotes": [{"id": 787366000, "item_id": 49210375, "url": "https://news.ycombinator.com/item?id=49210375", "by": "mickeyp", "date": "2026-08-07", "stance": "recommend", "quote": "This is one of the things Combobulate [0] tries to solve by using the output of tree-sitter.", "excerpt": "This is one of the things Combobulate [0] tries to solve by using the output of tree-sitter. Simple breadcrumbs are easy enough to do (your cursor has a clear parental lineage) but much harder to do if you want to retain semantic things, or do interesting things with (say) sibling nodes. You can see the treeview it generates in the GIFs in the link below [0] https://github.com/mickeynp/combobulate", "context": "", "use_case": "structural code navigation", "switched_from": "", "story": "Ask HN: Do modern code editors need stronger visual hierarchy?"}, {"id": 756640881, "item_id": 47290055, "url": "https://news.ycombinator.com/item?id=47290055", "by": "dataangel", "date": "2026-03-07", "stance": "recommend", "quote": "https://github.com/mickeynp/combobulate", "excerpt": "As always emacs has it already https://github.com/mickeynp/combobulate", "context": "", "use_case": "", "switched_from": "", "story": "Ki Editor - an editor that operates on the AST"}, {"id": 756597680, "item_id": 47287355, "url": "https://news.ycombinator.com/item?id=47287355", "by": "reedlaw", "date": "2026-03-07", "stance": "recommend", "quote": "https://github.com/mickeynp/combobulate", "excerpt": "https://github.com/mickeynp/combobulate", "context": "", "use_case": "Structural editing in Emacs", "switched_from": "", "story": "Ki Editor - an editor that operates on the AST"}, {"id": 753248416, "item_id": 47078026, "url": "https://news.ycombinator.com/item?id=47078026", "by": "cfiggers", "date": "2026-02-19", "stance": "neutral", "quote": "I am aware of Combobulate[1] for Emacs folks", "excerpt": "I am an S-exp enjoyer, and more for practical reasons than aesthetic ones\u2014I really like the editor tooling that's possible with S-expressions. So I will absolutely choose a Lisp or a lisp if given the option, even at some level of inconvenience when it comes to the maturity of the language itself. I will always write Hy[0] rather than Python, for example. [0] https://hylang.org (I am aware of Combobulate[1] for Emacs", "context": "", "use_case": "structural editing in Emacs", "switched_from": "", "story": "Choosing a Language Based on Its Syntax?"}]}