Skip to content
Snippets Groups Projects
Commit 671283e0 authored by Chris Lamb's avatar Chris Lamb :eyes:
Browse files

Improve output of Markdown and reStructuredText to use code blocks with...

Improve output of Markdown and reStructuredText to use code blocks with highlighting. (Closes: reproducible-builds/diffoscope#306)
parent 97a4bc5a
No related branches found
No related tags found
No related merge requests found
#
# diffoscope: in-depth comparison of files, archives, and directories
#
# Copyright © 2017, 2019-2020 Chris Lamb <lamby@debian.org>
# Copyright © 2017, 2019-2020, 2022 Chris Lamb <lamby@debian.org>
#
# diffoscope is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
......@@ -29,17 +29,19 @@ class MarkdownTextPresenter(Presenter):
self.title(difference.source1)
else:
self.title(
"Comparing {} & {}".format(
"Comparing `{}` & `{}`".format(
difference.source1, difference.source2
)
)
for x in difference.comments:
self.print_func(x)
self.print_func(f" * *{x}*")
self.print_func()
if difference.unified_diff:
self.print_func(self.indent(difference.unified_diff, " "))
self.print_func("```diff")
self.print_func(difference.unified_diff.rstrip())
self.print_func("```")
self.print_func()
def title(self, val):
......
#
# diffoscope: in-depth comparison of files, archives, and directories
#
# Copyright © 2017, 2019-2020 Chris Lamb <lamby@debian.org>
# Copyright © 2017, 2019-2020, 2022 Chris Lamb <lamby@debian.org>
#
# diffoscope is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
......@@ -37,11 +37,11 @@ class RestructuredTextPresenter(Presenter):
)
for x in difference.comments:
self.print_func()
self.print_func(x)
self.print_func()
if difference.unified_diff:
self.print_func("::")
self.print_func(".. code-block:: diff")
self.print_func()
self.print_func(self.indent(difference.unified_diff, " "))
self.print_func()
......
# Comparing test1.tar & test2.tar
# Comparing `test1.tar` & `test2.tar`
## file list
@@ -1,4 +1,4 @@
-drwxr-xr-x 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:09.000000 dir/
--rw-r--r-- 0 lunar (1000) lunar (1000) 446 2015-06-29 15:49:09.000000 dir/text
-crw-r--r-- 0 root (0) root (0) 1, 3 2015-06-29 15:49:09.000000 dir/null
-lrwxrwxrwx 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:09.000000 dir/link -> broken
+drwxr-xr-x 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:41.000000 dir/
+-rw-r--r-- 0 lunar (1000) lunar (1000) 671 2015-06-29 15:49:41.000000 dir/text
+crw-r--r-- 0 root (0) root (0) 1, 3 2015-06-29 15:49:41.000000 dir/null
+lrwxrwxrwx 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:41.000000 dir/link -> really-broken
```diff
@@ -1,4 +1,4 @@
-drwxr-xr-x 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:09.000000 dir/
--rw-r--r-- 0 lunar (1000) lunar (1000) 446 2015-06-29 15:49:09.000000 dir/text
-crw-r--r-- 0 root (0) root (0) 1, 3 2015-06-29 15:49:09.000000 dir/null
-lrwxrwxrwx 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:09.000000 dir/link -> broken
+drwxr-xr-x 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:41.000000 dir/
+-rw-r--r-- 0 lunar (1000) lunar (1000) 671 2015-06-29 15:49:41.000000 dir/text
+crw-r--r-- 0 root (0) root (0) 1, 3 2015-06-29 15:49:41.000000 dir/null
+lrwxrwxrwx 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:41.000000 dir/link -> really-broken
```
## dir/text
@@ -1,6 +1,12 @@
+A common form of lorem ipsum reads:
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim id est laborum.
+
+"Lorem ipsum" text is derived from sections 1.10.32--3 of Cicero's De finibus
+bonorum et malorum (On the Ends of Goods and Evils, or alternatively [About]
+The Purposes of Good and Evil).
```diff
@@ -1,6 +1,12 @@
+A common form of lorem ipsum reads:
+
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim id est laborum.
+
+"Lorem ipsum" text is derived from sections 1.10.32--3 of Cicero's De finibus
+bonorum et malorum (On the Ends of Goods and Evils, or alternatively [About]
+The Purposes of Good and Evil).
```
## dir/link
symlink
* *symlink*
@@ -1 +1 @@
-destination: broken
+destination: really-broken
```diff
@@ -1 +1 @@
-destination: broken
+destination: really-broken
```
......@@ -6,7 +6,7 @@ Comparing test1.tar & test2.tar
file list
---------
::
.. code-block:: diff
@@ -1,4 +1,4 @@
-drwxr-xr-x 0 lunar (1000) lunar (1000) 0 2015-06-29 15:49:09.000000 dir/
......@@ -22,7 +22,7 @@ file list
dir/text
--------
::
.. code-block:: diff
@@ -1,6 +1,12 @@
+A common form of lorem ipsum reads:
......@@ -42,9 +42,9 @@ dir/text
dir/link
--------
symlink
::
.. code-block:: diff
@@ -1 +1 @@
-destination: broken
......
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