Acme-CPANModules-UnixCommandWrappers

 view release on metacpan or  search on metacpan

lib/Acme/CPANModules/UnixCommandWrappers.pm  view on Meta::CPAN

package Acme::CPANModules::UnixCommandWrappers;

use strict;

our $AUTHORITY = 'cpan:PERLANCAR'; # AUTHORITY
our $DATE = '2024-09-19'; # DATE
our $DIST = 'Acme-CPANModules-UnixCommandWrappers'; # DIST
our $VERSION = '0.010'; # VERSION

our $LIST = {
    summary => "List of various CLIs that wrap existing Unix commands",
    description => <<'MARKDOWN',

These CLI's usually are meant to be called as the Unix commands they wrap, e.g.:

    alias ssh=sshwrap-hostcolor

But they perform additional stuffs.

If you know of others, please drop me a message.

Keywords: CLI, wrapper, Unix utilities

MARKDOWN
    entries => [
        # convert (ImageMagick)
        {
            summary => 'Simple wrappers for ImageMagick\'s convert to process multiple filenames and automatically set output filenames',
            module => 'App::ImageMagickUtils',
            script => ['convert-image-to', 'convert-image-to-pdf'],
            'x.command' => 'convert',
        },

        # cp, mv (ImageMagick)
        {
            summary => 'Wrappers for cp & mv to adjust relative symlinks',
            module => 'App::CpMvUtils',
            script => ['cp-and-adjust-symlinks', 'mv-and-adjust-symlinks'],
            'x.command' => ['cp', 'mv'],
        },

        # diff
        {
            summary => 'Wraps (or filters output of) diff to add colors and highlight words',
            module => 'App::diffwc',
            script => ['diffwc', 'diffwc-filter-u'],
            'x.command' => 'diff',
        },
        {
            summary => 'Diffs two office word-processor documents by first converting them to plaintext',
            module => 'App::DiffDocText',
            script => ['diff-doc-text'],
            'x.command' => 'diff',
        },
        {
            summary => 'Diffs two PDF files by first converting to plaintext',
            module => 'App::DiffPDFText',
            script => ['diff-pdf-text'],
            'x.command' => 'diff',
        },
        {
            summary => 'Diffs two office spreadsheets by first converting them to directories of CSV files',
            module => 'App::DiffXlsText',
            script => ['diff-xls-text'],
            'x.command' => 'diff',
        },
        {
            summary => 'Provides sdif (diff side-by-side with nice color theme), cdif (highlight words with nice color scheme), and watchdiff (watch command and diff output)',
            module => 'App::sdif',
            script => ['sdif', 'cdif', 'watchdiff'],
            'x.command' => ['diff', 'watch'],
        },

        # find
        {
            summary => 'Wraps find to add sorting',
            module => 'App::findsort',
            script => 'findsort',
            'x.command' => 'find',
        },

        # git
        {
            summary => 'Wraps git to do additional stuff, e.g. set user+email automatically',
            module => 'App::gitwrap',
            script => 'gitwrap',
            'x.command' => 'git',
        },

        # grep
        {
            summary => 'Print lines that match terms (each term need not be in particular order, support negative search)',
            module => 'App::GrepUtils',
            script => ['grep-terms'],
            'x.command' => ['grep'],
        },

        # man
        {
            summary => 'Wraps man to search for (and tab-complete) Perl module documentation',
            module => 'App::manwrap::pm',
            script => 'manwrap-pm',
            'x.command' => 'man',
        },

        # rsync
        {
            summary => 'Wraps rsync to add color to output, particularly highlighting deletion',
            module => 'App::rsynccolor',
            script => 'rsynccolor',
            'x.command' => 'rsync',
        },
        {
            summary => 'Wraps rsync to check that source is newer than target',
            module => 'App::rsync::new2old',
            script => 'rsync-new2old',
            'x.command' => 'rsync',
        },

        # ssh
        {
            summary => 'Wraps ssh to remember the background terminal color of each user+host you went to',
            module => 'App::sshwrap::hostcolor',
            script => 'sshwrap-hostcolor',
            'x.command' => 'ssh',
        },

    ],
};

1;
# ABSTRACT: List of various CLIs that wrap existing Unix commands

__END__

=pod

=encoding UTF-8

=head1 NAME

Acme::CPANModules::UnixCommandWrappers - List of various CLIs that wrap existing Unix commands

=head1 VERSION

This document describes version 0.010 of Acme::CPANModules::UnixCommandWrappers (from Perl distribution Acme-CPANModules-UnixCommandWrappers), released on 2024-09-19.

=head1 DESCRIPTION

These CLI's usually are meant to be called as the Unix commands they wrap, e.g.:

 alias ssh=sshwrap-hostcolor

But they perform additional stuffs.

If you know of others, please drop me a message.

Keywords: CLI, wrapper, Unix utilities

=head1 ACME::CPANMODULES ENTRIES

=over

=item L<App::ImageMagickUtils>

Simple wrappers for ImageMagick's convert to process multiple filenames and automatically set output filenames.

Scripts: L<convert-image-to>, L<convert-image-to-pdf>

=item L<App::CpMvUtils>

Wrappers for cp & mv to adjust relative symlinks.

Scripts: L<cp-and-adjust-symlinks>, L<mv-and-adjust-symlinks>

=item L<App::diffwc>

Wraps (or filters output of) diff to add colors and highlight words.

Scripts: L<diffwc>, L<diffwc-filter-u>

=item L<App::DiffDocText>

Diffs two office word-processor documents by first converting them to plaintext.

Script: L<diff-doc-text>

=item L<App::DiffPDFText>

Diffs two PDF files by first converting to plaintext.

Script: L<diff-pdf-text>

=item L<App::DiffXlsText>

Diffs two office spreadsheets by first converting them to directories of CSV files.

Script: L<diff-xls-text>

=item L<App::sdif>

Provides sdif (diff side-by-side with nice color theme), cdif (highlight words with nice color scheme), and watchdiff (watch command and diff output).

Scripts: L<sdif>, L<cdif>, L<watchdiff>

=item L<App::findsort>

Wraps find to add sorting.

Script: L<findsort>

=item L<App::gitwrap>

Wraps git to do additional stuff, e.g. set user+email automatically.

Script: L<gitwrap>

=item L<App::GrepUtils>

Print lines that match terms (each term need not be in particular order, support negative search).

Script: L<grep-terms>

=item L<App::manwrap::pm>

Wraps man to search for (and tab-complete) Perl module documentation.

Script: L<manwrap-pm>

=item L<App::rsynccolor>

Wraps rsync to add color to output, particularly highlighting deletion.

Script: L<rsynccolor>

=item L<App::rsync::new2old>

Wraps rsync to check that source is newer than target.

Script: L<rsync-new2old>

=item L<App::sshwrap::hostcolor>

Wraps ssh to remember the background terminal color of each user+host you went to.



( run in 2.510 seconds using v1.01-cache-2.11-cpan-d8267643d1d )