pyDiffTools 0.1.50__tar.gz → 0.1.52__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pydifftools-0.1.50 → pydifftools-0.1.52}/MANIFEST.in +1 -0
- {pydifftools-0.1.50/pyDiffTools.egg-info → pydifftools-0.1.52}/PKG-INFO +87 -4
- {pydifftools-0.1.50 → pydifftools-0.1.52}/README.rst +86 -3
- {pydifftools-0.1.50 → pydifftools-0.1.52/pyDiffTools.egg-info}/PKG-INFO +87 -4
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pyDiffTools.egg-info/SOURCES.txt +6 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/command_line.py +3 -0
- pydifftools-0.1.52/pydifftools/comment_filter_history.json +145 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/continuous.py +343 -126
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/comparison.py +13 -1
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/graph.py +7 -4
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/source_jump.js +24 -9
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/watch_graph.py +258 -153
- pydifftools-0.1.52/pydifftools/flowchart/wgrph_view.js +445 -0
- pydifftools-0.1.52/pydifftools/git_aliases.py +30 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/git_gd.py +19 -13
- pydifftools-0.1.52/pydifftools/pdf_diff.py +579 -0
- pydifftools-0.1.52/pydifftools/source_jump.py +203 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pyproject.toml +2 -1
- pydifftools-0.1.52/tests/test_comment_filters.py +441 -0
- pydifftools-0.1.52/tests/test_git_pdf_diff.py +424 -0
- pydifftools-0.1.52/tests/test_pdf_diff.py +495 -0
- pydifftools-0.1.52/tests/test_source_jump.py +424 -0
- pydifftools-0.1.50/pydifftools/flowchart/wgrph_view.js +0 -235
- pydifftools-0.1.50/pydifftools/source_jump.py +0 -128
- pydifftools-0.1.50/tests/test_source_jump.py +0 -85
- {pydifftools-0.1.50 → pydifftools-0.1.52}/LICENSE.md +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/_quarto.yml +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/__version__.txt +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/1a724af72b16f5a9e607e12b1c721645/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/1b28fc9daac9081847e5161b2c546f8a/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/231f64eee282fa225d1104935cf80a24/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/26e56f6b0ff54851a45145157f2f0dc4/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/311fabd7029ffd050d056e2f316eb50f/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/57da2021e5b156ac3adf01398201c723/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/62b24ea7da75011d92b0f8924faa208d/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/7f1b20d69d889514ab5d1cc92e3cb14f/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/86f74c8c54a87ff892d9b15dd714e8f0/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/88893b4234eac2945d9d6cb2e277f186/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/9a40046ada6f582ee34af00fbdbfb417/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/a1bf4d270d0641ff41faf1d7cce3439a/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/a3789f7d9585a781f2a1c60ce95ff10d/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/be46ecba858d39ad5f0c46902ddf1c02/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/d0cbc57a12f2ccce710a5afd04cc05e7/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/d3e12d320b14228f701231ae32ddd7dd/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/eb434f61555438d020a6970a5dbf9ee8/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/f6b0e73aa7fa029134665d4dde57e096/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/f719a6e4ff09873cb0ffb06ec9d232f9/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/executed/feeee244a7ce3d60e1a227eb604df823/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/.jupyter_cache/global.db +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/example.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/example.tex +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/index.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/.jupyter_cache/__version__.txt +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/.jupyter_cache/executed/ca90e4df5f4f0583df6554156a68dc7f/base.ipynb +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/.jupyter_cache/global.db +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/end_vs_he_sketch.jpg +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/independent.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/index.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/tasks.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/test_include.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/subproject1/tryforerror.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/example_notebook/project1/test_include.qmd +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pyDiffTools.egg-info/dependency_links.txt +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pyDiffTools.egg-info/entry_points.txt +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pyDiffTools.egg-info/requires.txt +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pyDiffTools.egg-info/top_level.txt +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/__init__.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/bibliography.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/browser_lifecycle.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/check_numbers.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/citation_dialog.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/command_registry.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comment_functions.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comment_migration.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comment_tags.lua +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comment_tags_margin.lua +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comment_tags_no_comments.lua +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comment_toggle.js +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comments.css +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/comments_author_colors.css +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/copy_files.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/diff-doc.js +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/doc_contents.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/__init__.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/dot_to_yaml.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/flowchart/svg-pan-zoom.min.js +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/forward_search.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/git_gd_history.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/git_gd_image.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/git_gd_qt.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/html_comments.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/html_uncomments.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/line_alignment.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/log_example.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/match_spaces.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/notebook/__init__.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/notebook/display.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/notebook/fast_build.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/notebook/tex_to_qmd.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/onewordify.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/onewordify_undo.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/outline.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/rearrange_tex.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/searchacro.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/separate_comments.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/split_conflict.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/unseparate_comments.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/update_check.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/wrap_sentences.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/wrapping_options.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/xml2xlsx.vbs +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/pydifftools/zotero.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/setup.cfg +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_bibliography.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_browser_lifecycle.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_check_single_use.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_command_line_help.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_comment_migration.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_continuous_shutdown.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_forward_search.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_git_gd_history.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_git_gd_image.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_git_gd_qt.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_line_alignment.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_rrng.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_tex_to_qmd.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_update_check.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_wrap_check.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_wrapping.py +0 -0
- {pydifftools-0.1.50 → pydifftools-0.1.52}/tests/test_zotero.py +0 -0
|
@@ -8,6 +8,7 @@ include pydifftools/comments_author_colors.css
|
|
|
8
8
|
include pydifftools/comment_tags.lua
|
|
9
9
|
include pydifftools/comment_tags_margin.lua
|
|
10
10
|
include pydifftools/comment_tags_no_comments.lua
|
|
11
|
+
include pydifftools/comment_filter_history.json
|
|
11
12
|
include pydifftools/comment_toggle.js
|
|
12
13
|
include pydifftools/flowchart/svg-pan-zoom.min.js
|
|
13
14
|
include pydifftools/flowchart/wgrph_view.js
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyDiffTools
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.52
|
|
4
4
|
Summary: Diff tools
|
|
5
5
|
Author: J M Franck
|
|
6
6
|
License: Copyright (c) 2015, jmfranck
|
|
@@ -118,6 +118,27 @@ included are (listed in order of fun/utility):
|
|
|
118
118
|
matching color. New authors choose a hue in a Qt picker; ``cpb`` adds their
|
|
119
119
|
``XXcolor`` field to the header.
|
|
120
120
|
|
|
121
|
+
``cpb`` manages ``comment_tags.lua``, the comment stylesheets and
|
|
122
|
+
``comment_toggle.js`` beside the Markdown source. A packaged SHA-256
|
|
123
|
+
catalog covers current and historical helpers from Git, including the
|
|
124
|
+
normal, margin and no-comment Lua variants. Known older files trigger an
|
|
125
|
+
update offer; unrecognized files are treated as possible local edits.
|
|
126
|
+
Updating removes generated helpers from Git tracking without deleting
|
|
127
|
+
the working copies, and adds them to ``.gitignore``. Keeping local edits
|
|
128
|
+
or Git tracking requires a second confirmation. An ignored
|
|
129
|
+
``.pydifft-comment-filter.json`` records the approved file hashes; changing
|
|
130
|
+
any helper causes another prompt. Keeping known older versions applies
|
|
131
|
+
only to the current ``cpb`` session.
|
|
132
|
+
|
|
133
|
+
``--no-comments`` selects the no-comment Lua variant. Running without
|
|
134
|
+
that flag when the on-disk Lua matches a current or historical no-comment
|
|
135
|
+
version asks whether to show comments. The selection uses the files'
|
|
136
|
+
contents, without active/inactive swapping or remembered mode settings.
|
|
137
|
+
Existing ``.inactive`` copies are migrated, preserving unique local
|
|
138
|
+
edits in ignored recovery files. Maintainers refresh the catalog with
|
|
139
|
+
``python .github/scripts/update_comment_filter_history.py``; the release
|
|
140
|
+
workflow also refreshes it before building distributions.
|
|
141
|
+
|
|
121
142
|
Declare a single local ``.bib`` file with ``bibliography: references.bib``
|
|
122
143
|
in the Markdown YAML header; relative paths are resolved beside the
|
|
123
144
|
Markdown file. Without that declaration, ``cpb`` uses a single adjacent
|
|
@@ -152,11 +173,25 @@ included are (listed in order of fun/utility):
|
|
|
152
173
|
``flowchart/watch_graph.py`` script so all of its functionality is now
|
|
153
174
|
available through the main ``pydifft`` entry point.
|
|
154
175
|
Add ``--diff-base HEAD`` (or a branch, tag, commit, or quoted reflog
|
|
155
|
-
reference) to
|
|
156
|
-
|
|
176
|
+
reference) to open a URL comparing against that Git snapshot.
|
|
177
|
+
Additions are green, deletions are red and struck through, and
|
|
157
178
|
unchanged content is muted. Renames share one box; date, status, and
|
|
158
179
|
dependency changes are annotated. Navigation, filters, and reloads retain
|
|
159
|
-
the baseline
|
|
180
|
+
the baseline through the ``diff-base`` URL parameter, whose reference and
|
|
181
|
+
commit appear below the graph. All view choices come from the URL:
|
|
182
|
+
``t`` focuses a task and its ancestors, ``d=1``
|
|
183
|
+
orders dated tasks, and ``p=1`` excludes completed tasks. Command options
|
|
184
|
+
choose the initial URL. Removing ``diff-base`` restores normal rendering;
|
|
185
|
+
clearing the entire query shows the full plan, including completed and
|
|
186
|
+
undated tasks. Each embedded SVG and live refresh uses the same URL mode.
|
|
187
|
+
The search button beside Home and Zoom finds text in the visible graph,
|
|
188
|
+
highlights matches, and centers the containing task at your chosen zoom.
|
|
189
|
+
Tab or Enter advances to the next match; Shift+Tab or Shift+Enter goes
|
|
190
|
+
back. Esc closes search. Phrases can span wrapped lines and formatted
|
|
191
|
+
text. Resizing the window scales the current view with the viewport.
|
|
192
|
+
The ``1:1`` button displays fonts at their declared pixel sizes, including
|
|
193
|
+
correction for GraphViz's SVG scaling. Right-click a task and select
|
|
194
|
+
Jump to source to open its YAML definition in gvim.
|
|
160
195
|
Comparison uses the same repository-relative YAML path; a file absent
|
|
161
196
|
from the revision is treated as an empty plan. Historical file renames
|
|
162
197
|
are not followed, and comparison markup is never written to YAML.
|
|
@@ -196,6 +231,10 @@ included are (listed in order of fun/utility):
|
|
|
196
231
|
changes, an additional red/blue alpha-difference view is included.
|
|
197
232
|
Run ``pydifft gd --install`` to add the matching ``git gd`` alias to
|
|
198
233
|
your global git config.
|
|
234
|
+
``pydifft gd --add-to-git`` offers the same installation, retaining the
|
|
235
|
+
exact command of an existing global ``gd`` alias. If none is configured,
|
|
236
|
+
it installs ``!f() { pydifft gd "$@"; }; f``. Alias installation is shared
|
|
237
|
+
with ``pd`` and ``tree``.
|
|
199
238
|
- `pydifft qmdinit [directory]` scaffolds a new Quarto-style project using
|
|
200
239
|
the bundled templates and example ``project1`` hierarchy, then downloads
|
|
201
240
|
MathJax into ``_template/mathjax`` so the builder can run immediately.
|
|
@@ -231,6 +270,50 @@ included are (listed in order of fun/utility):
|
|
|
231
270
|
this rule. The option is shared by ``cpb``, ``wmatch``, ``wr`` and
|
|
232
271
|
``wrchk``; ``--punctuation-slop`` remains an alias.
|
|
233
272
|
|
|
273
|
+
- ``pydifft pd OLD NEW [--no-compile]`` ("PDF diff") compares two ``.md``
|
|
274
|
+
files or two ``.tex`` files. It writes ``NEW_diff.tex`` beside the newer
|
|
275
|
+
input and, by default, compiles ``NEW_diff.pdf`` there with ``pdflatex``.
|
|
276
|
+
For example, ``pydifft pd old.md paper.md`` produces ``paper_diff.tex``
|
|
277
|
+
and ``paper_diff.pdf``. ``--no-compile`` retains the diff TeX without
|
|
278
|
+
running a compiler and supports TeX fragments as well as full documents.
|
|
279
|
+
|
|
280
|
+
Both formats use ``mylatexdiff-preamble.sty`` and the existing custom
|
|
281
|
+
``latexdiff`` options and postprocessing. The preamble is searched for
|
|
282
|
+
in the current directory, beside NEW, then through ``kpsewhich``.
|
|
283
|
+
Tools must be available on the caller's PATH, including any TeX Live
|
|
284
|
+
directory configured in your shell. Markdown additionally requires
|
|
285
|
+
Pandoc and pandoc-crossref; conversion honors declared bibliography and
|
|
286
|
+
CSL metadata, renders citations and cross-references, and resolves local
|
|
287
|
+
images beside each source. Converted TeX intermediates are temporary;
|
|
288
|
+
the Markdown sources are unchanged.
|
|
289
|
+
|
|
290
|
+
Markdown code blocks retain Pandoc syntax highlighting. Changed lines
|
|
291
|
+
get a colored background and a ``+`` or ``-`` marker, with each line
|
|
292
|
+
processed independently so highlighted code remains valid TeX.
|
|
293
|
+
Prose keeps the custom preamble styling.
|
|
294
|
+
|
|
295
|
+
Python runs ``pdflatex`` beside NEW until references and the table of
|
|
296
|
+
contents settle (at most six passes), running ``bibtex`` or ``biber``
|
|
297
|
+
when required. ``latexmk`` and its configuration are not used.
|
|
298
|
+
Compilation artifacts and the diff TeX remain available if compilation
|
|
299
|
+
fails. Existing generated outputs can be replaced on a successful rerun.
|
|
300
|
+
The former ``git-latexdiffnocompile.sh`` is a compatibility wrapper for
|
|
301
|
+
``pydifft pd --no-compile``.
|
|
302
|
+
|
|
303
|
+
Run ``pydifft pd --add-to-git`` to install the global ``git pd`` alias.
|
|
304
|
+
It accepts Git diff arguments: ``git pd 00ffaa -- filename.md`` compares
|
|
305
|
+
that revision with the working file; bare ``git pd`` compares unstaged
|
|
306
|
+
changes; ``git pd --cached`` compares staged changes; and
|
|
307
|
+
``git pd OLD NEW -- filename.md`` compares two revisions. Ranges and
|
|
308
|
+
Git pathspecs work as usual, including from repository subdirectories.
|
|
309
|
+
Each changed Markdown or TeX file produces its own ``NAME_diff.tex`` and
|
|
310
|
+
PDF beside the document's working-tree path. ``git pd --no-compile``
|
|
311
|
+
generates only TeX. Other file types are skipped, and unchanged files
|
|
312
|
+
produce no output. Additions, deletions, and renames are supported;
|
|
313
|
+
unresolved merge conflicts must be resolved first. Historical document
|
|
314
|
+
snapshots use the current project's bibliography, images, and TeX
|
|
315
|
+
includes. The shared installer edits only the requested global Git alias.
|
|
316
|
+
|
|
234
317
|
- `pydifft wd` ("word diff"): generate "track changes" word files starting from pandoc markdown in a git history. Assuming that you have copied diff-doc.js (copied + licensed from elsewhere) into your home directory, this will use pandoc to convert the markdown files to MS Word, then use the MS Word comparison tool to generate a document where all relevant changes are shown with "track changes."
|
|
235
318
|
|
|
236
319
|
* by default, this uses the file `template.docx` in the current directory as a pandoc word template
|
|
@@ -63,6 +63,27 @@ included are (listed in order of fun/utility):
|
|
|
63
63
|
matching color. New authors choose a hue in a Qt picker; ``cpb`` adds their
|
|
64
64
|
``XXcolor`` field to the header.
|
|
65
65
|
|
|
66
|
+
``cpb`` manages ``comment_tags.lua``, the comment stylesheets and
|
|
67
|
+
``comment_toggle.js`` beside the Markdown source. A packaged SHA-256
|
|
68
|
+
catalog covers current and historical helpers from Git, including the
|
|
69
|
+
normal, margin and no-comment Lua variants. Known older files trigger an
|
|
70
|
+
update offer; unrecognized files are treated as possible local edits.
|
|
71
|
+
Updating removes generated helpers from Git tracking without deleting
|
|
72
|
+
the working copies, and adds them to ``.gitignore``. Keeping local edits
|
|
73
|
+
or Git tracking requires a second confirmation. An ignored
|
|
74
|
+
``.pydifft-comment-filter.json`` records the approved file hashes; changing
|
|
75
|
+
any helper causes another prompt. Keeping known older versions applies
|
|
76
|
+
only to the current ``cpb`` session.
|
|
77
|
+
|
|
78
|
+
``--no-comments`` selects the no-comment Lua variant. Running without
|
|
79
|
+
that flag when the on-disk Lua matches a current or historical no-comment
|
|
80
|
+
version asks whether to show comments. The selection uses the files'
|
|
81
|
+
contents, without active/inactive swapping or remembered mode settings.
|
|
82
|
+
Existing ``.inactive`` copies are migrated, preserving unique local
|
|
83
|
+
edits in ignored recovery files. Maintainers refresh the catalog with
|
|
84
|
+
``python .github/scripts/update_comment_filter_history.py``; the release
|
|
85
|
+
workflow also refreshes it before building distributions.
|
|
86
|
+
|
|
66
87
|
Declare a single local ``.bib`` file with ``bibliography: references.bib``
|
|
67
88
|
in the Markdown YAML header; relative paths are resolved beside the
|
|
68
89
|
Markdown file. Without that declaration, ``cpb`` uses a single adjacent
|
|
@@ -97,11 +118,25 @@ included are (listed in order of fun/utility):
|
|
|
97
118
|
``flowchart/watch_graph.py`` script so all of its functionality is now
|
|
98
119
|
available through the main ``pydifft`` entry point.
|
|
99
120
|
Add ``--diff-base HEAD`` (or a branch, tag, commit, or quoted reflog
|
|
100
|
-
reference) to
|
|
101
|
-
|
|
121
|
+
reference) to open a URL comparing against that Git snapshot.
|
|
122
|
+
Additions are green, deletions are red and struck through, and
|
|
102
123
|
unchanged content is muted. Renames share one box; date, status, and
|
|
103
124
|
dependency changes are annotated. Navigation, filters, and reloads retain
|
|
104
|
-
the baseline
|
|
125
|
+
the baseline through the ``diff-base`` URL parameter, whose reference and
|
|
126
|
+
commit appear below the graph. All view choices come from the URL:
|
|
127
|
+
``t`` focuses a task and its ancestors, ``d=1``
|
|
128
|
+
orders dated tasks, and ``p=1`` excludes completed tasks. Command options
|
|
129
|
+
choose the initial URL. Removing ``diff-base`` restores normal rendering;
|
|
130
|
+
clearing the entire query shows the full plan, including completed and
|
|
131
|
+
undated tasks. Each embedded SVG and live refresh uses the same URL mode.
|
|
132
|
+
The search button beside Home and Zoom finds text in the visible graph,
|
|
133
|
+
highlights matches, and centers the containing task at your chosen zoom.
|
|
134
|
+
Tab or Enter advances to the next match; Shift+Tab or Shift+Enter goes
|
|
135
|
+
back. Esc closes search. Phrases can span wrapped lines and formatted
|
|
136
|
+
text. Resizing the window scales the current view with the viewport.
|
|
137
|
+
The ``1:1`` button displays fonts at their declared pixel sizes, including
|
|
138
|
+
correction for GraphViz's SVG scaling. Right-click a task and select
|
|
139
|
+
Jump to source to open its YAML definition in gvim.
|
|
105
140
|
Comparison uses the same repository-relative YAML path; a file absent
|
|
106
141
|
from the revision is treated as an empty plan. Historical file renames
|
|
107
142
|
are not followed, and comparison markup is never written to YAML.
|
|
@@ -141,6 +176,10 @@ included are (listed in order of fun/utility):
|
|
|
141
176
|
changes, an additional red/blue alpha-difference view is included.
|
|
142
177
|
Run ``pydifft gd --install`` to add the matching ``git gd`` alias to
|
|
143
178
|
your global git config.
|
|
179
|
+
``pydifft gd --add-to-git`` offers the same installation, retaining the
|
|
180
|
+
exact command of an existing global ``gd`` alias. If none is configured,
|
|
181
|
+
it installs ``!f() { pydifft gd "$@"; }; f``. Alias installation is shared
|
|
182
|
+
with ``pd`` and ``tree``.
|
|
144
183
|
- `pydifft qmdinit [directory]` scaffolds a new Quarto-style project using
|
|
145
184
|
the bundled templates and example ``project1`` hierarchy, then downloads
|
|
146
185
|
MathJax into ``_template/mathjax`` so the builder can run immediately.
|
|
@@ -176,6 +215,50 @@ included are (listed in order of fun/utility):
|
|
|
176
215
|
this rule. The option is shared by ``cpb``, ``wmatch``, ``wr`` and
|
|
177
216
|
``wrchk``; ``--punctuation-slop`` remains an alias.
|
|
178
217
|
|
|
218
|
+
- ``pydifft pd OLD NEW [--no-compile]`` ("PDF diff") compares two ``.md``
|
|
219
|
+
files or two ``.tex`` files. It writes ``NEW_diff.tex`` beside the newer
|
|
220
|
+
input and, by default, compiles ``NEW_diff.pdf`` there with ``pdflatex``.
|
|
221
|
+
For example, ``pydifft pd old.md paper.md`` produces ``paper_diff.tex``
|
|
222
|
+
and ``paper_diff.pdf``. ``--no-compile`` retains the diff TeX without
|
|
223
|
+
running a compiler and supports TeX fragments as well as full documents.
|
|
224
|
+
|
|
225
|
+
Both formats use ``mylatexdiff-preamble.sty`` and the existing custom
|
|
226
|
+
``latexdiff`` options and postprocessing. The preamble is searched for
|
|
227
|
+
in the current directory, beside NEW, then through ``kpsewhich``.
|
|
228
|
+
Tools must be available on the caller's PATH, including any TeX Live
|
|
229
|
+
directory configured in your shell. Markdown additionally requires
|
|
230
|
+
Pandoc and pandoc-crossref; conversion honors declared bibliography and
|
|
231
|
+
CSL metadata, renders citations and cross-references, and resolves local
|
|
232
|
+
images beside each source. Converted TeX intermediates are temporary;
|
|
233
|
+
the Markdown sources are unchanged.
|
|
234
|
+
|
|
235
|
+
Markdown code blocks retain Pandoc syntax highlighting. Changed lines
|
|
236
|
+
get a colored background and a ``+`` or ``-`` marker, with each line
|
|
237
|
+
processed independently so highlighted code remains valid TeX.
|
|
238
|
+
Prose keeps the custom preamble styling.
|
|
239
|
+
|
|
240
|
+
Python runs ``pdflatex`` beside NEW until references and the table of
|
|
241
|
+
contents settle (at most six passes), running ``bibtex`` or ``biber``
|
|
242
|
+
when required. ``latexmk`` and its configuration are not used.
|
|
243
|
+
Compilation artifacts and the diff TeX remain available if compilation
|
|
244
|
+
fails. Existing generated outputs can be replaced on a successful rerun.
|
|
245
|
+
The former ``git-latexdiffnocompile.sh`` is a compatibility wrapper for
|
|
246
|
+
``pydifft pd --no-compile``.
|
|
247
|
+
|
|
248
|
+
Run ``pydifft pd --add-to-git`` to install the global ``git pd`` alias.
|
|
249
|
+
It accepts Git diff arguments: ``git pd 00ffaa -- filename.md`` compares
|
|
250
|
+
that revision with the working file; bare ``git pd`` compares unstaged
|
|
251
|
+
changes; ``git pd --cached`` compares staged changes; and
|
|
252
|
+
``git pd OLD NEW -- filename.md`` compares two revisions. Ranges and
|
|
253
|
+
Git pathspecs work as usual, including from repository subdirectories.
|
|
254
|
+
Each changed Markdown or TeX file produces its own ``NAME_diff.tex`` and
|
|
255
|
+
PDF beside the document's working-tree path. ``git pd --no-compile``
|
|
256
|
+
generates only TeX. Other file types are skipped, and unchanged files
|
|
257
|
+
produce no output. Additions, deletions, and renames are supported;
|
|
258
|
+
unresolved merge conflicts must be resolved first. Historical document
|
|
259
|
+
snapshots use the current project's bibliography, images, and TeX
|
|
260
|
+
includes. The shared installer edits only the requested global Git alias.
|
|
261
|
+
|
|
179
262
|
- `pydifft wd` ("word diff"): generate "track changes" word files starting from pandoc markdown in a git history. Assuming that you have copied diff-doc.js (copied + licensed from elsewhere) into your home directory, this will use pandoc to convert the markdown files to MS Word, then use the MS Word comparison tool to generate a document where all relevant changes are shown with "track changes."
|
|
180
263
|
|
|
181
264
|
* by default, this uses the file `template.docx` in the current directory as a pandoc word template
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pyDiffTools
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.52
|
|
4
4
|
Summary: Diff tools
|
|
5
5
|
Author: J M Franck
|
|
6
6
|
License: Copyright (c) 2015, jmfranck
|
|
@@ -118,6 +118,27 @@ included are (listed in order of fun/utility):
|
|
|
118
118
|
matching color. New authors choose a hue in a Qt picker; ``cpb`` adds their
|
|
119
119
|
``XXcolor`` field to the header.
|
|
120
120
|
|
|
121
|
+
``cpb`` manages ``comment_tags.lua``, the comment stylesheets and
|
|
122
|
+
``comment_toggle.js`` beside the Markdown source. A packaged SHA-256
|
|
123
|
+
catalog covers current and historical helpers from Git, including the
|
|
124
|
+
normal, margin and no-comment Lua variants. Known older files trigger an
|
|
125
|
+
update offer; unrecognized files are treated as possible local edits.
|
|
126
|
+
Updating removes generated helpers from Git tracking without deleting
|
|
127
|
+
the working copies, and adds them to ``.gitignore``. Keeping local edits
|
|
128
|
+
or Git tracking requires a second confirmation. An ignored
|
|
129
|
+
``.pydifft-comment-filter.json`` records the approved file hashes; changing
|
|
130
|
+
any helper causes another prompt. Keeping known older versions applies
|
|
131
|
+
only to the current ``cpb`` session.
|
|
132
|
+
|
|
133
|
+
``--no-comments`` selects the no-comment Lua variant. Running without
|
|
134
|
+
that flag when the on-disk Lua matches a current or historical no-comment
|
|
135
|
+
version asks whether to show comments. The selection uses the files'
|
|
136
|
+
contents, without active/inactive swapping or remembered mode settings.
|
|
137
|
+
Existing ``.inactive`` copies are migrated, preserving unique local
|
|
138
|
+
edits in ignored recovery files. Maintainers refresh the catalog with
|
|
139
|
+
``python .github/scripts/update_comment_filter_history.py``; the release
|
|
140
|
+
workflow also refreshes it before building distributions.
|
|
141
|
+
|
|
121
142
|
Declare a single local ``.bib`` file with ``bibliography: references.bib``
|
|
122
143
|
in the Markdown YAML header; relative paths are resolved beside the
|
|
123
144
|
Markdown file. Without that declaration, ``cpb`` uses a single adjacent
|
|
@@ -152,11 +173,25 @@ included are (listed in order of fun/utility):
|
|
|
152
173
|
``flowchart/watch_graph.py`` script so all of its functionality is now
|
|
153
174
|
available through the main ``pydifft`` entry point.
|
|
154
175
|
Add ``--diff-base HEAD`` (or a branch, tag, commit, or quoted reflog
|
|
155
|
-
reference) to
|
|
156
|
-
|
|
176
|
+
reference) to open a URL comparing against that Git snapshot.
|
|
177
|
+
Additions are green, deletions are red and struck through, and
|
|
157
178
|
unchanged content is muted. Renames share one box; date, status, and
|
|
158
179
|
dependency changes are annotated. Navigation, filters, and reloads retain
|
|
159
|
-
the baseline
|
|
180
|
+
the baseline through the ``diff-base`` URL parameter, whose reference and
|
|
181
|
+
commit appear below the graph. All view choices come from the URL:
|
|
182
|
+
``t`` focuses a task and its ancestors, ``d=1``
|
|
183
|
+
orders dated tasks, and ``p=1`` excludes completed tasks. Command options
|
|
184
|
+
choose the initial URL. Removing ``diff-base`` restores normal rendering;
|
|
185
|
+
clearing the entire query shows the full plan, including completed and
|
|
186
|
+
undated tasks. Each embedded SVG and live refresh uses the same URL mode.
|
|
187
|
+
The search button beside Home and Zoom finds text in the visible graph,
|
|
188
|
+
highlights matches, and centers the containing task at your chosen zoom.
|
|
189
|
+
Tab or Enter advances to the next match; Shift+Tab or Shift+Enter goes
|
|
190
|
+
back. Esc closes search. Phrases can span wrapped lines and formatted
|
|
191
|
+
text. Resizing the window scales the current view with the viewport.
|
|
192
|
+
The ``1:1`` button displays fonts at their declared pixel sizes, including
|
|
193
|
+
correction for GraphViz's SVG scaling. Right-click a task and select
|
|
194
|
+
Jump to source to open its YAML definition in gvim.
|
|
160
195
|
Comparison uses the same repository-relative YAML path; a file absent
|
|
161
196
|
from the revision is treated as an empty plan. Historical file renames
|
|
162
197
|
are not followed, and comparison markup is never written to YAML.
|
|
@@ -196,6 +231,10 @@ included are (listed in order of fun/utility):
|
|
|
196
231
|
changes, an additional red/blue alpha-difference view is included.
|
|
197
232
|
Run ``pydifft gd --install`` to add the matching ``git gd`` alias to
|
|
198
233
|
your global git config.
|
|
234
|
+
``pydifft gd --add-to-git`` offers the same installation, retaining the
|
|
235
|
+
exact command of an existing global ``gd`` alias. If none is configured,
|
|
236
|
+
it installs ``!f() { pydifft gd "$@"; }; f``. Alias installation is shared
|
|
237
|
+
with ``pd`` and ``tree``.
|
|
199
238
|
- `pydifft qmdinit [directory]` scaffolds a new Quarto-style project using
|
|
200
239
|
the bundled templates and example ``project1`` hierarchy, then downloads
|
|
201
240
|
MathJax into ``_template/mathjax`` so the builder can run immediately.
|
|
@@ -231,6 +270,50 @@ included are (listed in order of fun/utility):
|
|
|
231
270
|
this rule. The option is shared by ``cpb``, ``wmatch``, ``wr`` and
|
|
232
271
|
``wrchk``; ``--punctuation-slop`` remains an alias.
|
|
233
272
|
|
|
273
|
+
- ``pydifft pd OLD NEW [--no-compile]`` ("PDF diff") compares two ``.md``
|
|
274
|
+
files or two ``.tex`` files. It writes ``NEW_diff.tex`` beside the newer
|
|
275
|
+
input and, by default, compiles ``NEW_diff.pdf`` there with ``pdflatex``.
|
|
276
|
+
For example, ``pydifft pd old.md paper.md`` produces ``paper_diff.tex``
|
|
277
|
+
and ``paper_diff.pdf``. ``--no-compile`` retains the diff TeX without
|
|
278
|
+
running a compiler and supports TeX fragments as well as full documents.
|
|
279
|
+
|
|
280
|
+
Both formats use ``mylatexdiff-preamble.sty`` and the existing custom
|
|
281
|
+
``latexdiff`` options and postprocessing. The preamble is searched for
|
|
282
|
+
in the current directory, beside NEW, then through ``kpsewhich``.
|
|
283
|
+
Tools must be available on the caller's PATH, including any TeX Live
|
|
284
|
+
directory configured in your shell. Markdown additionally requires
|
|
285
|
+
Pandoc and pandoc-crossref; conversion honors declared bibliography and
|
|
286
|
+
CSL metadata, renders citations and cross-references, and resolves local
|
|
287
|
+
images beside each source. Converted TeX intermediates are temporary;
|
|
288
|
+
the Markdown sources are unchanged.
|
|
289
|
+
|
|
290
|
+
Markdown code blocks retain Pandoc syntax highlighting. Changed lines
|
|
291
|
+
get a colored background and a ``+`` or ``-`` marker, with each line
|
|
292
|
+
processed independently so highlighted code remains valid TeX.
|
|
293
|
+
Prose keeps the custom preamble styling.
|
|
294
|
+
|
|
295
|
+
Python runs ``pdflatex`` beside NEW until references and the table of
|
|
296
|
+
contents settle (at most six passes), running ``bibtex`` or ``biber``
|
|
297
|
+
when required. ``latexmk`` and its configuration are not used.
|
|
298
|
+
Compilation artifacts and the diff TeX remain available if compilation
|
|
299
|
+
fails. Existing generated outputs can be replaced on a successful rerun.
|
|
300
|
+
The former ``git-latexdiffnocompile.sh`` is a compatibility wrapper for
|
|
301
|
+
``pydifft pd --no-compile``.
|
|
302
|
+
|
|
303
|
+
Run ``pydifft pd --add-to-git`` to install the global ``git pd`` alias.
|
|
304
|
+
It accepts Git diff arguments: ``git pd 00ffaa -- filename.md`` compares
|
|
305
|
+
that revision with the working file; bare ``git pd`` compares unstaged
|
|
306
|
+
changes; ``git pd --cached`` compares staged changes; and
|
|
307
|
+
``git pd OLD NEW -- filename.md`` compares two revisions. Ranges and
|
|
308
|
+
Git pathspecs work as usual, including from repository subdirectories.
|
|
309
|
+
Each changed Markdown or TeX file produces its own ``NAME_diff.tex`` and
|
|
310
|
+
PDF beside the document's working-tree path. ``git pd --no-compile``
|
|
311
|
+
generates only TeX. Other file types are skipped, and unchanged files
|
|
312
|
+
produce no output. Additions, deletions, and renames are supported;
|
|
313
|
+
unresolved merge conflicts must be resolved first. Historical document
|
|
314
|
+
snapshots use the current project's bibliography, images, and TeX
|
|
315
|
+
includes. The shared installer edits only the requested global Git alias.
|
|
316
|
+
|
|
234
317
|
- `pydifft wd` ("word diff"): generate "track changes" word files starting from pandoc markdown in a git history. Assuming that you have copied diff-doc.js (copied + licensed from elsewhere) into your home directory, this will use pandoc to convert the markdown files to MS Word, then use the MS Word comparison tool to generate a document where all relevant changes are shown with "track changes."
|
|
235
318
|
|
|
236
319
|
* by default, this uses the file `template.docx` in the current directory as a pandoc word template
|
|
@@ -51,6 +51,7 @@ pydifftools/check_numbers.py
|
|
|
51
51
|
pydifftools/citation_dialog.py
|
|
52
52
|
pydifftools/command_line.py
|
|
53
53
|
pydifftools/command_registry.py
|
|
54
|
+
pydifftools/comment_filter_history.json
|
|
54
55
|
pydifftools/comment_functions.py
|
|
55
56
|
pydifftools/comment_migration.py
|
|
56
57
|
pydifftools/comment_tags.lua
|
|
@@ -64,6 +65,7 @@ pydifftools/copy_files.py
|
|
|
64
65
|
pydifftools/diff-doc.js
|
|
65
66
|
pydifftools/doc_contents.py
|
|
66
67
|
pydifftools/forward_search.py
|
|
68
|
+
pydifftools/git_aliases.py
|
|
67
69
|
pydifftools/git_gd.py
|
|
68
70
|
pydifftools/git_gd_history.py
|
|
69
71
|
pydifftools/git_gd_image.py
|
|
@@ -76,6 +78,7 @@ pydifftools/match_spaces.py
|
|
|
76
78
|
pydifftools/onewordify.py
|
|
77
79
|
pydifftools/onewordify_undo.py
|
|
78
80
|
pydifftools/outline.py
|
|
81
|
+
pydifftools/pdf_diff.py
|
|
79
82
|
pydifftools/rearrange_tex.py
|
|
80
83
|
pydifftools/searchacro.py
|
|
81
84
|
pydifftools/separate_comments.py
|
|
@@ -103,13 +106,16 @@ tests/test_bibliography.py
|
|
|
103
106
|
tests/test_browser_lifecycle.py
|
|
104
107
|
tests/test_check_single_use.py
|
|
105
108
|
tests/test_command_line_help.py
|
|
109
|
+
tests/test_comment_filters.py
|
|
106
110
|
tests/test_comment_migration.py
|
|
107
111
|
tests/test_continuous_shutdown.py
|
|
108
112
|
tests/test_forward_search.py
|
|
109
113
|
tests/test_git_gd_history.py
|
|
110
114
|
tests/test_git_gd_image.py
|
|
111
115
|
tests/test_git_gd_qt.py
|
|
116
|
+
tests/test_git_pdf_diff.py
|
|
112
117
|
tests/test_line_alignment.py
|
|
118
|
+
tests/test_pdf_diff.py
|
|
113
119
|
tests/test_rrng.py
|
|
114
120
|
tests/test_source_jump.py
|
|
115
121
|
tests/test_tex_to_qmd.py
|
|
@@ -36,6 +36,7 @@ from .copy_files import copy_image_files
|
|
|
36
36
|
from .searchacro import replace_acros
|
|
37
37
|
from .rearrange_tex import run as rearrange_tex_run
|
|
38
38
|
from .git_gd import gd # registers git difftool review command
|
|
39
|
+
from .pdf_diff import pd, git_pd # registers PDF diff command
|
|
39
40
|
from .flowchart.watch_graph import wgrph
|
|
40
41
|
from .flowchart.graph import load_graph_yaml
|
|
41
42
|
from .notebook.tex_to_qmd import tex2qmd
|
|
@@ -933,6 +934,8 @@ def build_parser():
|
|
|
933
934
|
def main(argv=None):
|
|
934
935
|
if argv is None:
|
|
935
936
|
argv = sys.argv[1:]
|
|
937
|
+
if argv[:2] == ["pd", "--git"]:
|
|
938
|
+
return git_pd(argv[2:])
|
|
936
939
|
if argv and argv[0] in ("--ver", "--version"):
|
|
937
940
|
build_parser().parse_args(argv)
|
|
938
941
|
return
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
{
|
|
2
|
+
"comment_tags.lua": {
|
|
3
|
+
"2a0ffaf315c28059d7e8fb67388dd38275f78eb911b640dfb567763bbf63e089": {
|
|
4
|
+
"commit": "73d51e080667e0b4cf8a13146a615e2866207e04",
|
|
5
|
+
"mode": "margin",
|
|
6
|
+
"path": "pydifftools/comment_tags_margin.lua"
|
|
7
|
+
},
|
|
8
|
+
"2c16914eb312e46715316ec896c0952483c0f70c519ef3a3d022f28b3047ca54": {
|
|
9
|
+
"commit": "016080494be7e90d49f94b0f0aeb88c47dc9241a",
|
|
10
|
+
"mode": "margin",
|
|
11
|
+
"path": "pydifftools/comment_tags_margin.lua"
|
|
12
|
+
},
|
|
13
|
+
"380c20c350751b7e9a107b8855d4f3c1c022daf410dadd1842cffbb5d6b20cd6": {
|
|
14
|
+
"commit": "697bbdd00d3215c46216669f419014f0d41da526",
|
|
15
|
+
"mode": "margin",
|
|
16
|
+
"path": "pydifftools/comment_tags_margin.lua"
|
|
17
|
+
},
|
|
18
|
+
"54ab119b5a0868f5349bdf224ec134be59c81b925e7d35b6a1d9173eca2671fa": {
|
|
19
|
+
"commit": "308647bb0cd7dc153c945703862503eea6a3da9b",
|
|
20
|
+
"mode": "margin",
|
|
21
|
+
"path": "pydifftools/comment_tags_margin.lua"
|
|
22
|
+
},
|
|
23
|
+
"5a6a27bfb21a0b674adb10b7dcc5b9bf1b34152256391ed77b354dc666e944cf": {
|
|
24
|
+
"commit": "697bbdd00d3215c46216669f419014f0d41da526",
|
|
25
|
+
"mode": "none",
|
|
26
|
+
"path": "pydifftools/comment_tags_no_comments.lua"
|
|
27
|
+
},
|
|
28
|
+
"5ffa678cca561170bdaa83ae0d06d6197f3781cb4be01033a5d6c03c4dbcedc3": {
|
|
29
|
+
"commit": "268d61dac16384984a395bef0067100ac763cb3d",
|
|
30
|
+
"mode": "none",
|
|
31
|
+
"path": "pydifftools/comment_tags_no_comments.lua"
|
|
32
|
+
},
|
|
33
|
+
"a994853143e845328e43c642b9445202b115ec07762fe85d30763006d71f7389": {
|
|
34
|
+
"commit": "308647bb0cd7dc153c945703862503eea6a3da9b",
|
|
35
|
+
"mode": "default",
|
|
36
|
+
"path": "pydifftools/comment_tags.lua"
|
|
37
|
+
},
|
|
38
|
+
"aecfb5915c837c724b0d9a7c9404166103da912fe2cb99834b48073b8d637ca1": {
|
|
39
|
+
"commit": "e2eb0fba6cb03884889a257f776a3f64c3a3185e",
|
|
40
|
+
"mode": "default",
|
|
41
|
+
"path": "pydifftools/comment_tags.lua"
|
|
42
|
+
},
|
|
43
|
+
"ba2f1e784187a3bb8dc110d1065b23bc3dd9f5993db988542009c105ee3fb925": {
|
|
44
|
+
"commit": "016080494be7e90d49f94b0f0aeb88c47dc9241a",
|
|
45
|
+
"mode": "default",
|
|
46
|
+
"path": "pydifftools/comment_tags.lua"
|
|
47
|
+
},
|
|
48
|
+
"d0f1a6f876382334184f3b0a1341159c827845efcccfb6d5cd06a70207660e1a": {
|
|
49
|
+
"commit": "697bbdd00d3215c46216669f419014f0d41da526",
|
|
50
|
+
"mode": "default",
|
|
51
|
+
"path": "pydifftools/comment_tags.lua"
|
|
52
|
+
},
|
|
53
|
+
"deea0b807c92875c8a450875ac10a7df841ffa76350f320140ee1dcb5c1445fb": {
|
|
54
|
+
"commit": "73d51e080667e0b4cf8a13146a615e2866207e04",
|
|
55
|
+
"mode": "default",
|
|
56
|
+
"path": "pydifftools/comment_tags.lua"
|
|
57
|
+
},
|
|
58
|
+
"fcebc0022c806cec34b467086116428cc1f48e5b23225bf5a9561f273cd7218b": {
|
|
59
|
+
"commit": "308647bb0cd7dc153c945703862503eea6a3da9b",
|
|
60
|
+
"mode": "none",
|
|
61
|
+
"path": "pydifftools/comment_tags_no_comments.lua"
|
|
62
|
+
},
|
|
63
|
+
"ffc14453e371f701d2a49e9a0cc29746b589372d0066c42f0c5c18f8953286f7": {
|
|
64
|
+
"commit": "7d2847f50b5f261c4128a89d858391f8a8c76f0c",
|
|
65
|
+
"mode": "default",
|
|
66
|
+
"path": "pydifftools/comment_tags.lua"
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"comment_toggle.js": {
|
|
70
|
+
"1f19e86fa7bc272b15dfd4feae155ae2cb328d28fe38476306d8200329126de4": {
|
|
71
|
+
"commit": "60e573de785f3ad10043e6ccc7fe14b4c0292019",
|
|
72
|
+
"mode": "shared",
|
|
73
|
+
"path": "pydifftools/comment_toggle.js"
|
|
74
|
+
},
|
|
75
|
+
"34d3a67a4f79aa0711c434a8d315aa74fcb5aad95b6cbc23ba19c4a29e9dd66f": {
|
|
76
|
+
"commit": "9a4a907da65467eecc1595035b215e34be742441",
|
|
77
|
+
"mode": "shared",
|
|
78
|
+
"path": "pydifftools/comment_toggle.js"
|
|
79
|
+
},
|
|
80
|
+
"617107e0c5c58b1b1b15b8a2485860eb1345536974ba76caa625fa2b809516ce": {
|
|
81
|
+
"commit": "7e84fc03bb8daf6e1081a3ec3f93ceb934088687",
|
|
82
|
+
"mode": "shared",
|
|
83
|
+
"path": "pydifftools/comment_toggle.js"
|
|
84
|
+
},
|
|
85
|
+
"c9129af481db475469341bb2a8b6b2ba3739bddd8dc1f8601b43168519d51172": {
|
|
86
|
+
"commit": "e2eb0fba6cb03884889a257f776a3f64c3a3185e",
|
|
87
|
+
"mode": "shared",
|
|
88
|
+
"path": "pydifftools/comment_toggle.js"
|
|
89
|
+
},
|
|
90
|
+
"d3b405f1158b80455c998b375939e7daecbb0b7f33c8406823bc350b20096ecd": {
|
|
91
|
+
"commit": "016080494be7e90d49f94b0f0aeb88c47dc9241a",
|
|
92
|
+
"mode": "shared",
|
|
93
|
+
"path": "pydifftools/comment_toggle.js"
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"comments.css": {
|
|
97
|
+
"0ad0f6ce759b071bf3e5568fb97f327db7678cbb203c2b93550b0ca32f1dd44c": {
|
|
98
|
+
"commit": "7e84fc03bb8daf6e1081a3ec3f93ceb934088687",
|
|
99
|
+
"mode": "shared",
|
|
100
|
+
"path": "pydifftools/comments.css"
|
|
101
|
+
},
|
|
102
|
+
"1ca5a5d10356bdf194fc05f0eab2aa4f1741d0e6d50418caa15b66f9da28c5ec": {
|
|
103
|
+
"commit": "8245633092781d39638f6cbf90c91090a7cccd8f",
|
|
104
|
+
"mode": "shared",
|
|
105
|
+
"path": "pydifftools/comments.css"
|
|
106
|
+
},
|
|
107
|
+
"998852f3328d0c2fb717b441e8804baf9047c1fbe5377a237e162465c37d13e3": {
|
|
108
|
+
"commit": "60e573de785f3ad10043e6ccc7fe14b4c0292019",
|
|
109
|
+
"mode": "shared",
|
|
110
|
+
"path": "pydifftools/comments.css"
|
|
111
|
+
},
|
|
112
|
+
"a1bb5ffd9d5a8d1a1867db36fe179c6f1070378c3719b4c68e3eebfda07a4805": {
|
|
113
|
+
"commit": "e2eb0fba6cb03884889a257f776a3f64c3a3185e",
|
|
114
|
+
"mode": "shared",
|
|
115
|
+
"path": "pydifftools/comments.css"
|
|
116
|
+
},
|
|
117
|
+
"a9a0686877e33d4fd640a8f513af7ff750ace05387e95e3a7fb292a94585e771": {
|
|
118
|
+
"commit": "73d51e080667e0b4cf8a13146a615e2866207e04",
|
|
119
|
+
"mode": "shared",
|
|
120
|
+
"path": "pydifftools/comments.css"
|
|
121
|
+
},
|
|
122
|
+
"ac1c93065a777c4f185293be2baac9011ad5d5014f67e4947b21aa353d6609cc": {
|
|
123
|
+
"commit": "9a4a907da65467eecc1595035b215e34be742441",
|
|
124
|
+
"mode": "shared",
|
|
125
|
+
"path": "pydifftools/comments.css"
|
|
126
|
+
},
|
|
127
|
+
"d730a992c3b6570e0a1c26b2fe351338a1b0ac7d6a8e17ace0a5292b92ba6ff5": {
|
|
128
|
+
"commit": "518379efe37292e5d3d9b5dfa687c0842b5e9c1d",
|
|
129
|
+
"mode": "shared",
|
|
130
|
+
"path": "pydifftools/comments.css"
|
|
131
|
+
},
|
|
132
|
+
"ea39254a85879468c2c47cf30267602afff0328ba9ae3acbe236af6501061502": {
|
|
133
|
+
"commit": "016080494be7e90d49f94b0f0aeb88c47dc9241a",
|
|
134
|
+
"mode": "shared",
|
|
135
|
+
"path": "pydifftools/comments.css"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"comments_author_colors.css": {
|
|
139
|
+
"a5e409852c32f3e80482b111c96bd6d87b37a0e3750a33d5f4f499bd6af849fe": {
|
|
140
|
+
"commit": "697bbdd00d3215c46216669f419014f0d41da526",
|
|
141
|
+
"mode": "shared",
|
|
142
|
+
"path": "pydifftools/comments_author_colors.css"
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|