File Coverage

blib/lib/App/sdif.pm
Criterion Covered Total %
statement 11 17 64.7
branch 0 2 0.0
condition 0 2 0.0
subroutine 4 5 80.0
pod 0 1 0.0
total 15 27 55.5


line stmt bran cond sub pod time code
1             package App::sdif;
2 1     1   656 use v5.14;
  1         4  
3 1     1   6 use warnings;
  1         2  
  1         27  
4              
5 1     1   5 use Exporter 'import';
  1         2  
  1         92  
6             our @EXPORT = qw(usage);
7             our %EXPORT_TAGS = ();
8             our @EXPORT_OK = qw();
9              
10             our $VERSION = "4.26";
11              
12 1     1   533 use Pod::Usage;
  1         50178  
  1         252  
13              
14             sub usage {
15 0 0   0 0   my $opt = ref($_[0]) eq 'HASH' ? shift : {};
16 0           select STDERR;
17 0           print @_;
18 0           pod2usage(-verbose => 0, -exitval => "NOEXIT");
19 0           print "Version: $VERSION\n";
20 0   0       exit($opt->{status} // 0);
21             }
22              
23             1;
24              
25             =encoding utf8
26              
27             =head1 NAME
28              
29             App::sdif - sdif and family tools, cdif and watchdiff
30              
31             =head1 SYNOPSIS
32              
33             sdif f1 f2
34              
35             diff -c f1 f2 | cdif
36              
37             git diff | sdif -n
38              
39             watchdiff df
40              
41             =head1 DESCRIPTION
42              
43             B are composed by B and related tools including
44             B and B.
45              
46             B prints diff output in side-by-side format.
47              
48             B adds visual effect for diff output, comparing lines in
49             word-by-word, or character-by-character bases.
50              
51             B calls specified command repeatedly, and print the output
52             with visual effect to emphasize modified part.
53              
54             See individual manual of each command for detail.
55              
56             =head1 INSTALL
57              
58             =head2 CPANM
59              
60             $ cpanm App::sdif
61              
62             =head2 GIT
63              
64             Those are sample configurations using B family in git
65             environment. You need to install B command to use B<--mecab>
66             option.
67              
68             ~/.gitconfig
69             [pager]
70             log = sdif | less
71             show = sdif | less
72             diff = sdif | less
73              
74             ~/.sdifrc
75             option default -n --margin=4
76              
77             ~/.cdifrc
78             option default --mecab
79              
80             ~/.profile
81             export LESS="-cR"
82             export LESSANSIENDCHARS="mK"
83              
84             You can write everything in ~/.gitconfig:
85              
86             [pager]
87             log = sdif -n --margin=4 --mecab | env LESSANSIENDCHARS=mK less -cR
88             show = sdif -n --margin=4 --mecab | env LESSANSIENDCHARS=mK less -cR
89             diff = sdif -n --margin=4 --mecab | env LESSANSIENDCHARS=mK less -cR
90              
91             =begin html
92              
93            

94              
95             =end html
96              
97             =head1 SEE ALSO
98              
99             L, L, L
100              
101             L
102              
103             =head1 AUTHOR
104              
105             Kazumasa Utashiro
106              
107             =head1 LICENSE
108              
109             Copyright 1992- Kazumasa Utashiro.
110              
111             These commands and libraries are free software; you can redistribute
112             it and/or modify it under the same terms as Perl itself.
113              
114             =cut
115              
116             # LocalWords: sdif cdif watchdiff diff CPANM cpanm Kaz Utashiro