Skip to content
Snippets Groups Projects
Commit c2491021 authored by Bas Nijholt's avatar Bas Nijholt
Browse files

add ipynb_filter

parent 119d6599
No related branches found
No related tags found
No related merge requests found
*.ipynb filter=ipynb_filter
#!/usr/bin/env python3
# `ipynb_filter.py`:
# This is a git filters that strips out the outputs and
# meta data of a Jupyer notebook using `nbconvert`.
# Execute the following line in order to activate this filter:
# python ipynb_filter.py
#
# The following line should be in `.gitattributes`:
# *.ipynb filter=ipynb_filter
#
# from github.com/basnijholt/ipynb_git_filters
from nbconvert.preprocessors import Preprocessor
class RemoveMetadata(Preprocessor):
def preprocess(self, nb, resources):
nb.metadata = {"language_info": {"name":"python",
"pygments_lexer": "ipython3"}}
return nb, resources
if __name__ == '__main__':
# The filter is getting activated
import os
git_cmd = 'git config filter.ipynb_filter.clean "jupyter nbconvert --to notebook --config ipynb_filter.py --stdin --stdout"'
os.system(git_cmd)
else:
# This script is used as config
c.Exporter.preprocessors = [RemoveMetadata]
c.ClearOutputPreprocessor.enabled = True
c.ClearOutputPreprocessor.remove_metadata_fields = [
"deletable", "editable", "collapsed", "scrolled"]
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment