Comments (7)
If you would allow it, after the typescript fixing, we could set this up in tsdoc
Then tutorials could be in-boarded and there would be a very clear single place from which to teach
from peggy.
I'm open to using tsdoc, but I'm not ready to move the whole project to ts to get it, and the current mechanism of hand-maintaining the .d.ts
file isn't good enough for the future. If we generate it with tsc and pass the tsdoc comments throught, that might work. Show me a prototype?
from peggy.
but I'm not ready to move the whole project to ts to get it
You don't need to. Also, you really ought to: when I already did it, I drove more than 100 bugs out of peg
.
the current mechanism of hand-maintaining the .d.ts file isn't good enough for the future
It's a one-liner with dts-gen
and should be in npm scripts
If we generate it with tsc and pass the tsdoc comments throught, that might work. Show me a prototype?
Will do. Probably next weekend - I mostly can only find time for open source on the weekends right now.
It's actually a pretty easy lift, you'll see. Basically all you do is turn allowJs
on in the typescript
config, then typescript
happily pretends most of it is javascript
Granted you have some bugs to fix then, but that needs to happen anyway
from peggy.
Nod. I've gotten the first few bits of that working in a few other projects, but had to use jsdoc type annotations, which:
- are only compatible with ts types for the most trivial types
- are incompatible with tsdoc
I'm looking forward to seeing how a dts-gen
approach makes those better. Thanks for taking this on. I'm going to assign this to you for the moment, assuming that you're going to fix the original bug along with this workflow after we look at the prototype.
from peggy.
meaning bug 666 about setting context data at runtime?
i was just talking about documentation generation
from peggy.
OK, I'll start a different bug for doc generation, and fix this one tactically for now.
from peggy.
See #87
from peggy.
Related Issues (20)
- Allow use of an empty array as default value in allowedStartRules option HOT 1
- 4.0.1 dropped support for Node 18 HOT 3
- Implement soft-mode with access to partial results
- Start and end index of matched rule in the source code. HOT 5
- allow await HOT 2
- Code completion for Peggy grammar HOT 3
- posAssertion doesn't work HOT 1
- Add StartRules to .d.ts
- Allow whitespace between plucked word and its pattern
- Failed to run "peggy" on windows, "-S.exe" is missing, what's this? HOT 3
- Proposal to rename `grammarSource` option in parse method to `source` HOT 1
- Infinite repetition in RFCs HOT 3
- Failed to compile grammar containing imports HOT 3
- Grammar with token "constructor" fails to generate HOT 2
- Web tests fail
- Allow es6 plugins from CLI HOT 2
- Clean up rollup hacks in CLI
- Allow ES6 config files
- non-default startRule doesn't work with multiple allowedStartRules HOT 1
- Make rule name available inside action blocks
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from peggy.