Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Topiary Book Super-PR #884

Merged
merged 11 commits into from
Mar 19, 2025
Merged

Topiary Book Super-PR #884

merged 11 commits into from
Mar 19, 2025

Conversation

Xophmeister
Copy link
Member

@Xophmeister Xophmeister commented Feb 24, 2025

Topiary Book Super-PR

Supersedes #750
Resolves #874
Resolves #875
Resolves #876

Description

This is the base/super-PR for the Topiary Book. Sub-PRs will hang off this and the idea is that they'll all be merged into this, before everything is merged into main.

Checklist

Checklist before merging, wherever relevant:

  • CHANGELOG.md updated
  • Documentation (The Topiary Book, README.md, etc.) up-to-date

@Xophmeister
Copy link
Member Author

Xophmeister commented Mar 4, 2025

Note to self:

  • Not documented anywhere: Need for Git and C/C++ toolchain to fetch+build grammars dynamically.

@nbacquey
Copy link
Member

nbacquey commented Mar 6, 2025

Note to self:

* [ ]  Not documented anywhere: Need for Git and C/C++ toolchain to fetch+build grammars dynamically.

Do we still need the C/C++ toolchain since we switched to tree_sitter_loader?

@Xophmeister
Copy link
Member Author

Do we still need the C/C++ toolchain since we switched to tree_sitter_loader?

I believe so: tree_sitter_loader still calls out to the local C/C++ toolchain, it just sets the compile and link flags appropriately.

Xophmeister and others added 10 commits March 11, 2025 12:28
* Add GitHub repo link to book config

* WIP: Decant README into book

* Update usage documentation verifier

* WIP: Decant easier parts of reference and TTY playground from README

* Preparing ground for capture name documentation

* WIP: Plan lift of capture names from README

* Reference/Capture names/Basics (first approx.)

* Reference/Capture names/{Horizonal spacing,Indentation} (first approx.)

* Reference/Capture names/Insertion and deletion (first approx.)

* Reference/Capture names/{Vertical spacing,Scopes} (first approx.)

* Decant guides into book
* Reorganisation

* Moved section on environment variables to Topiary CLI/Runtime dialogue
* Not enough to write about RE Tree-sitter grammars, so combined with
  queries chapter

* Tree-sitter crash course

* Added note about query syntax support
* Add Yann's tutorial to the Guides

Resolves #874

* Reworked "Adding a new language"

* Reworked "Suggested query development workflow"

* Harmonise capitalisation

* Add disclaimer to "Adding a new language"

* Make the input/expected iteration step clearer

* Fixed reference for new numbering

* Clarification on what's strictly necessary

* Added note RE #query-name!

Note: Link is broken in this PR; will be correct with #891
* Reworked intro

* Reworked general advice

* Reworked horizontal spacing

* Apparently I can't spell horizontal :P

* Reworked modification (formerly case)

* Reworked insertion and deletion

* Reworked indentation

* Forgot to remove TODO from horizontal spacing

* Applied Nicolas' suggestions

* Reworked vertical spacing

* Reworked scopes

* Fixed link

* Applied Yann's and Nicolas' suggestions
Also mentioned it's out-of-development status; resolves #875
* Set up

* Decant CONTRIBUTING.md into contributors' guide

* Tidy up contributing guide

FWIW... A lot is out-of-date, but I adjusted things as necessary

* Note on contributing new language support

Resolves #876

* s/represented/supported/
* Easy/cheap changes for consistency

* Apparently links in PR descriptions don't work as expected :(

* Document C/C++ toolchain dependency

* Clean up relics

* Topiary Book style guide

* Edit wrt style guide

* Small tweaks to style guide
* Build web playground from 'playground' branch

* Build website

* Remove website tasks from ci.yml and prepare website.yaml for deployment

* Add Topiary Book as a Nix output derivation

* Build book in CI

* Setup Nix for website build and cache playground assets

* Cache Nix build assets rather than the symlink to their directory

* Update website landing page w/ link, etc.

* Fudge to get caching to work (hopefully)

* Another fudge for caching...

* Meaningless change to show caching works (hopefully...)

* Deploy website

* Set book base URL
@Xophmeister Xophmeister marked this pull request as ready for review March 17, 2025 15:58
@Xophmeister Xophmeister requested review from nbacquey and yannham March 17, 2025 15:58
@Xophmeister
Copy link
Member Author

Reviewers Please don't spend ages reviewing this meticulously; the sup-PRs have all been independently reviewed.

@Xophmeister
Copy link
Member Author

I'm going to force this through, since the sub-PRs have been reviewed.

@Xophmeister Xophmeister merged commit 5a98e3f into main Mar 19, 2025
9 checks passed
@Xophmeister Xophmeister deleted the chris/book/base branch March 19, 2025 12:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants