Help language development. Donate to The Perl Foundation
Find your source file easily.
$ fs -h Usage: /home/*/.perl6/bin/fs [add|list|remove] [-l=<array>] [-w=<array>] [-a=<array>] [-i] [-no=<array>] [-only=<string>] [-d|--debug] <directory> -l=<array> load specify config, available config are < perl make cpp cfg >. -w=<array> match whole filename. -a=<array> addition extension list. -i enable ignore case mode. -no=<array> exclude file category. -only=<string> only search given category. -d|--debug print debug message.
The config use json format, it contain the option will add categories to command line.
In the config, you also can append value to -w
or -a
.
{ "option" : [ { "short" : "c", "value" : [ "c" ], "annotation" : "c source file extension list. " }, { "short" : "h", "value" : [ "h" ], "annotation" : "c/c++ header file extension list. " } ] }
short
is the category option will added.
value
is the default value of the category, it will append the value to the category if the category exists.
Use -l cpp
to load the config, it will add -h=<array>
and -c=<array>
to fs
command line.
$ fs -l cpp -h Usage: /home/*/.perl6/bin/fs [add|list|remove] [-l=<array>] [-w=<array>] [-a=<array>] [-i] [-no=<array>] [-only=<string>] [-d|--debug] [-c=<array>] [-cpp=<array>] [-h=<array>] <directory> -l=<array> load specify config, available config are < perl make cpp cfg >. -w=<array> match whole filename. -a=<array> addition extension list. -i enable ignore case mode. -no=<array> exclude file category. -only=<string> only search given category. -d|--debug print debug message. -c=<array> c source file extension list. [c] -h=<array> c/c++ header file extension list. [h]
Add an argument specify the directory you want searched.
$ fs ../rakudo/tmp/rakudo/src/vm -l cpp "../rakudo/tmp/rakudo/src/vm/moar/ops/perl6_ops.c" "../rakudo/tmp/rakudo/src/vm/moar/ops/container.h" "../rakudo/tmp/rakudo/src/vm/moar/ops/container.c"
You can add additional file extension to category.
$ fs ../rakudo/tmp/rakudo/src/vm -l cpp -a java "../rakudo/tmp/rakudo/src/vm/moar/ops/perl6_ops.c" "../rakudo/tmp/rakudo/src/vm/moar/ops/container.h" "../rakudo/tmp/rakudo/src/vm/moar/ops/container.c" "../rakudo/tmp/rakudo/src/vm/jvm/runtime/org/perl6/rakudo/RakudoContainerSpec.java" "../rakudo/tmp/rakudo/src/vm/jvm/runtime/org/perl6/rakudo/RakudoContainerConfigurer.java" "../rakudo/tmp/rakudo/src/vm/jvm/runtime/org/perl6/rakudo/RakOps.java" "../rakudo/tmp/rakudo/src/vm/jvm/runtime/org/perl6/rakudo/RakudoJavaInterop.java" "../rakudo/tmp/rakudo/src/vm/jvm/runtime/org/perl6/rakudo/RakudoEvalServer.java" "../rakudo/tmp/rakudo/src/vm/jvm/runtime/org/perl6/rakudo/Binder.java"
You can add your own config to configuration directory.
List current configuration file:
$ fs list cfg.json perl.json cpp.json make.json
zef install App::FindSource
GPL
araraloren (blackcatoverwall#gmail.com)