summaryrefslogtreecommitdiff
path: root/projects/wsdiff/index.html
blob: 8ae2de21b2f52763be7d66586a6791e8a9b865a6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<!DOCTYPE html>
<html><head>
    <meta charset="utf-8">
    <title>wsdiff | Home</title>
    <meta name="description" content="">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="mobile-web-app-capable" content="yes">
    <meta name="color-scheme" content="dark light">
    <link rel="stylesheet" href="/style.css">
</head>
<body><nav>
    <div class="internal">
        
        <a href="/" title="Home">Home</a>
        <a href="/blog/" title="Blog">Blog</a>
        <a href="/projects/" title="Projects">Projects</a>
        <a href="/about/" title="About">About</a>
    </div>
    <div class="search">
        <div id="search"></div>
    </div>
    <div class="external">
        <a href="https://git.jaseg.de/" title="cgit">cgit</a>
        <a href="https://github.com/jaseg" title="Github">Github</a>
        <a href="https://gitlab.com/neinseg" title="Gitlab">Gitlab</a>
        <a href="https://chaos.social/@jaseg" title="Mastodon">Mastodon</a>
    </span>
</nav>

    <header>
        <h1>wsdiff</h1>
<ul class="breadcrumbs">
    <li><a href="/">jaseg.de</a></li>
    <li><a href="/projects/">Projects</a></li><li><a href="/projects/wsdiff/">wsdiff</a></li>
</ul>

    </header>
    <main data-pagefind-body>
        <div class="links">
            <a href="https://git.jaseg.de/wsdiff.git">Sources</a>
            <a href="https://github.com/jaseg/wsdiff/issues">Issues</a>
            <a href="https://pypi.org/project/wsdiff">PyPI</a>
        </div>
        <div class="document">


<p>wsdiff is a python script that produces a diff of two files or directories as a single, self-contained HTML file. The
resulting diff works without Javascript and will automatically switch between inline and side-by-side formats depending
on available screen space.</p>
<div class="section" id="installation">
<h2>Installation</h2>
<pre class="code sh literal-block">
<span class="lineno"></span><span class="line">$<span class="w"> </span>pip<span class="w"> </span>install<span class="w"> </span>wsdiff
</span></pre>
</div>
<div class="section" id="usage">
<h2>Usage</h2>
<pre class="literal-block">
<span class="lineno"></span><span class="line">usage: wsdiff [-h] [-b] [-s SYNTAX_CSS] [-l LEXER] [-L] [-t PAGETITLE]</span>
<span class="lineno"></span><span class="line">                    [-o OUTPUT] [--header] [--content]</span>
<span class="lineno"></span><span class="line">                    [old] [new]</span>
<span class="lineno"></span><span class="line"></span>
<span class="lineno"></span><span class="line">Given two source files or directories this application creates an html page</span>
<span class="lineno"></span><span class="line">that highlights the differences between the two.</span>
<span class="lineno"></span><span class="line"></span>
<span class="lineno"></span><span class="line">positional arguments:</span>
<span class="lineno"></span><span class="line">  old                   source file or directory to compare (&quot;before&quot; file)</span>
<span class="lineno"></span><span class="line">  new                   source file or directory to compare (&quot;after&quot; file)</span>
<span class="lineno"></span><span class="line"></span>
<span class="lineno"></span><span class="line">options:</span>
<span class="lineno"></span><span class="line">  -h, --help            show this help message and exit</span>
<span class="lineno"></span><span class="line">  -b, --open            Open output file in a browser</span>
<span class="lineno"></span><span class="line">  -s SYNTAX_CSS, --syntax-css SYNTAX_CSS</span>
<span class="lineno"></span><span class="line">                        Path to custom Pygments CSS file for code syntax</span>
<span class="lineno"></span><span class="line">                        highlighting</span>
<span class="lineno"></span><span class="line">  -l LEXER, --lexer LEXER</span>
<span class="lineno"></span><span class="line">                        Manually select pygments lexer (default: guess from</span>
<span class="lineno"></span><span class="line">                        filename, use -L to list available lexers.)</span>
<span class="lineno"></span><span class="line">  -L, --list-lexers     List available lexers for -l/--lexer</span>
<span class="lineno"></span><span class="line">  -t PAGETITLE, --pagetitle PAGETITLE</span>
<span class="lineno"></span><span class="line">                        Override page title of output HTML file</span>
<span class="lineno"></span><span class="line">  -o OUTPUT, --output OUTPUT</span>
<span class="lineno"></span><span class="line">                        Name of output file (default: stdout)</span>
<span class="lineno"></span><span class="line">  --header              Only output HTML header with stylesheets and stuff,</span>
<span class="lineno"></span><span class="line">                        and no diff</span>
<span class="lineno"></span><span class="line">  --content             Only output HTML content, without header
</span></pre>
</div>
<div class="section" id="example-output">
<h2>Example Output</h2>
<img alt="latest.png" src="latest.png" />
</div>
</div>
    </main><footer>
    Copyright © 2023 Jan Sebastian Götte
    / <a href="/about/">About</a>
    / <a href="/imprint/">Imprint</a>
</footer>
<script src="/pagefind/pagefind-ui.js"></script>
        <script>
            if(navigator.getEnvironmentIntegrity!==undefined)document.querySelector('body').innerHTML=`<h1>Your browser
            contains Google DRM</h1>"Web Environment Integrity" is a Google euphemism for a DRM that is designed to
            prevent ad-blocking, and which Google has forced into their browsers against widespread public opposition.
                In support of an open web, this website does not function with this DRM. Please install a browser such
            as <a href="https://www.mozilla.org/en-US/firefox/new/">Firefox</a> that respects your freedom and supports
            ad blockers.`;

            window.addEventListener('DOMContentLoaded', (event) => {
                new PagefindUI({element: "#search", showSubResults: true});
            });
        </script>
    </body>
</html>