- #!/usr/bin/env perl
-
- =pod
-
- =head1 NAME
-
- marks-add - add files to the current set of marked files
-
- =head1 SYNOPSIS
-
- marks-add: stashes a filesystem path for use with other utilities
-
- USAGE:
- marks add path_to_mark
-
- EXAMPLE:
- marks add *.txt
- cd ~/notes
- marks mv
-
- =head1 AUTHOR
-
- Brennen Bearnes
-
- =cut
-
- use warnings;
- use strict;
- use 5.10.0;
-
- use App::MarkFiles qw(add);
- use Cwd qw(cwd abs_path);
- use Getopt::Long;
- use Pod::Usage;
-
- my $from_file;
- GetOptions(
- # 'config=s' => \$config_file,
- 'file|f' => \$from_file,
- help => sub { pod2usage(0) },
- ) or pod2usage(2);
-
- if ($from_file) {
- # Use either the contents of files or standard input:
- while (<>) {
- chomp;
- next unless length $_;
-
- # TODO: This doesn't handle ~ expansion - use File::Glob?
- # Not really a problem for things coming in as params
- # from the shell, but it could well break user expectations
- # in files.
- add(abs_path($_));
- }
- } else {
- # Use arguments as filenames to add:
- add(map { abs_path($_) } @ARGV);
- }
|