# fcscs - fast curses screen content select
-# Copyright (C) 2013-2016 Simon Ruderich
+# Copyright (C) 2013-2017 Simon Ruderich
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# Necessary for GNU screen or it'll keep the window open until an
# external command has run.
- require File::Spec;
+ require File::Spec; # load here to speedup startup
my $devnull = File::Spec->devnull();
open STDIN, '<', $devnull or die $!;
open STDOUT, '>', $devnull or die $!;
$number = 1;
}
- $screen->draw_matches($config, $matches, []); # remove matches
+ $screen->draw_matches($config, $matches, []); # clear matches
foreach (@{$matches}) {
return { match => $_ } if $_->{id} == $number;
$screen->debug('handler_yank', 'started');
- require File::Temp;
+ require File::Temp; # load here to speedup startup
# Use a temporary file to prevent leaking the yanked data to other users
# with the command line, e.g. ps aux or top.
$screen->debug('handler_paste', 'started');
- require Time::HiRes;
+ require Time::HiRes; # load here to speedup startup
my @cmd;
if ($config->{setting}{multiplexer} eq 'screen') {
=head1 CONFIGURATION
-fcscs is configured through F<~/.fcscsrc> or F<~/.config/fcscs/fcscsrc> which
-is a normal Perl script with all of Perl's usual features.
+fcscs is configured through F<~/.fcscsrc> (preferred) or
+F<~/.config/fcscs/fcscsrc> which is a normal Perl script with all of Perl's
+usual features (only loaded if not writable by others).
All configuration values are stored in the hash C<%config>. All manually
defined keys overwrite the default settings.
# Draw numbers in bold yellow.
$config{attribute}{match_id} = color_pair(COLOR_YELLOW, -1)
| A_BOLD;
- # Disable Vim-like 'smartcase', ignore case until an upper character is
- # searched.
+ # Disable Vim-like 'smartcase' (ignore case until an upper character is
+ # searched) which is enabled by default.
$config{setting}{smartcase} = 0;
# Use chromium to open URLs if running under X, elinks otherwise.
=item B<paste_sleep> sleep x us before running paste command (C<100_000>)
-=item B<screen_msgwait> GNU Screen's msgwait variable, used when yanking (C<5>)
+=item B<screen_msgwait> GNU Screen's msgwait variable, overwritten with this value when yanking (C<5>)
=item B<alternative_return> additional accept key like return, set to C<\n> to disable (C<s>)
=head1 LICENSE AND COPYRIGHT
-Copyright (C) 2013-2016 by Simon Ruderich
+Copyright (C) 2013-2017 by Simon Ruderich
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by