[plt-dev] Opinions on property file
On Apr 7, Noel Welsh wrote:
> I like /.props, but not strongly. /props will be more visible, which
> might be a good thing for an infrequently edited file.
It was already set to <plt>/collects/meta/props by popular demand...
In any case, the script is there now. Just running it with no
arguments should produce enough verbiage to see how to use it, but
I'll repeat it here for comments. Jay -- the scheme interface is
describe in the big comment at the top of the file.
Usage: props subcommand args ...
This is a utility for manipulating properties in the PLT repository.
Each of the following subcommands expects a property name from a set of
known properties. The given paths are normalized to be relative to the
plt root for the tree holding this script *if* it is in such a tree
(determined by inspecting a few known directories), otherwise an error
is raised.
Note: this script holds the data that it changes, so you need to commit
it after changes are made.
Note: it does not depend on the plt installation that runs it -- you
just need to use the script from the work directory that you want to
deal with; if you add a git alias like:
prop = "!$(git rev-parse --show-toplevel)/collects/meta/props"
to your global git config file (usually ~/.gitconfig), then you'll be
able to run it as `git prop' (the first part of this finds the root of
your workdir).
Path arguments can also be given via stdin (each on a line) if the
command-line path argument is a single `-'. In this mode the paths are
not normalized, and it is intended for infrastructure scripts only.
Available subcommands:
help: show this help
get <prop> <path/s>
set <prop> <val> <path/s>
del <prop> <path/s>
Known properties:
responsible: a list of unique symbols
drdr: command-line string, delay in seconds, or a list with both
See in-script comments for a scheme interface
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!