Comments (6)
Hi Christopher,
Thank you for your input
I am going to try to (the following is also a note to myself) modularize each application (formatter or whatever an end user wants to apply) for each cell. The challenge is how each application communicates with the previous and the next one. I think we can solve this challenge using echo piping to keep applications as flexible as possible as well as easy to customize. If you have other ideas, feel free to let me know :)
Let's do it. When this is implemented, please give it a try and let me know how it goes.
Best,
Kwat
from clean.jl.
I think I understand what you mean. The way pre-commit works is it expects that there is a cli tool available which can take a list of files on the command line. In general, all of these formatters will at least work at that level. Some of them allow you to pipe in and get the output. One idea is that you could read each code block out of the jupyter notebook, write it to a temporary file, then run the list of temporary files through the formatters and recreate the notebook after they're done.
from clean.jl.
I merged @samhardyhey 's pull request. Next, I'm trying to meet @fantapop 's requests while maintaining @samhardyhey 's inputs. Thank you for waiting.
from clean.jl.
@fantapop, is there a library that lints spacing specifically? Something more than just black?
from clean.jl.
from clean.jl.
@fantapop and @KwatME : I think I have worked out a solution for generic tooling
- My solution is present as this branch on my fork.
- I have described how it works by under 3.0 Features in README.md
- I have tested this to work on both
py
&ipynb
Sending a pr
from clean.jl.
Related Issues (20)
- Add option to fail if dirty HOT 2
- Remove additional properties from markdown cells
- Why does this require python 3.7? What would it take to support 3.6? HOT 1
- Implement a progress bar for huge notebooks HOT 2
- Clean up the code from the recent pull requests
- Build with CI/CD to ensure prs really work HOT 5
- Separate cleaning python and julia
- Rename *.cleaned.ipynb to *.clean.ipynb
- Rename the command line tool to be cleanipynb
- Make overwriting the default
- Add back the exercise code HOT 1
- Debug Google colab notebook HOT 1
- Julia escaping \
- Use server to speed up cleaning up Julia code HOT 1
- Use join
- Investigate why cleaning julia .ipynb cells with "$" fails.
- Split Python and Julia
- Remove empty cells
- FTBS on Debian/Testing HOT 4
- Set up `JuliaFormatter.toml`
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 clean.jl.