Metadata-Version: 2.1
Name: hcl
Version: 0.2.1
Summary: Interactive CLI for exploring HDF5 files
Home-page: https://github.com/clbarnes/hcl
Author: Chris L. Barnes
Author-email: chrislloydbarnes@gmail.com
License: UNKNOWN
Description: # hcl
        
        Explore **H**df5 files on the **C**ommand **L**ine.
        
        Designed to be familiar to Unix CLI users, but no particular effort has been made for true compatibility or POSIX compliance.
        
        ## Usage
        
        ```_help
        usage: hcl [-h] [-c COMMAND] [-p PLUGIN] [--verbose] [--mode MODE] [--version]
                   [file]
        
        CLI for interactive exploration of HDF5 files.
        
        positional arguments:
          file                  HDF5 file to explore. Add ':/path/to/group' to start
                                in a specific group. If this is not given, only
                                `--version`, `--help`, or `--command '<some_command>
                                --help'` can be used.
        
        optional arguments:
          -h, --help            show this help message and exit
          -c COMMAND, --command COMMAND
                                Run a single command and exit.
          -p PLUGIN, --plugin PLUGIN
                                Import path for additional commands, in the form
                                '{module}:{object}', where {module} can be an absolute
                                import path, or the path to a python file which can be
                                run; {object} can be a Command subclass, an iterable
                                of them, or a callable returning either. Can be used
                                multiple times.
          --verbose, -v         Increase logging verbosity, up to -vv for debug.
          --mode MODE, -m MODE  Mode in which to open the file. 'r' (default):
                                Readonly, file must exist. 'r+': Read/write, file must
                                exist. 'w': Create file, truncate if exists. 'w-' or
                                'x': Create file, fail if exists. 'a': Read/write if
                                exists, create otherwise.
          --version, -V         Print version and exit.
        ```
        
        ### Commands available
        
        ```_commands
        attrs               List attributes or look at one attribute.
        cd                  Change working group.
        chunks              Get dataset chunks.
        compression         Get dataset compression.
        compression_opts    Get dataset compression_opts.
        driver              Get group or dataset driver.
        dtype               Get dataset dtype.
        exit                Quit hcl.
        filename            Get group or dataset filename.
        fillvalue           Get dataset fillvalue.
        fletcher32          Get dataset fletcher32.
        help                List available commands.
        is_virtual          Get dataset is_virtual.
        libver              Get group or dataset libver.
        ls                  List members of a group.
        maxshape            Get dataset maxshape.
        mode                Get group or dataset mode.
        name                Get group or dataset name.
        pwd                 Get working group.
        scaleoffset         Get dataset scaleoffset.
        shape               Get dataset shape.
        shuffle             Get dataset shuffle.
        size                Get dataset size.
        tree                Show hierarchy as a tree.
        userblock_size      Get group or dataset userblock_size.
        ```
        
        See files in [commands/](./commands) for usage for each command.
        
        ## Development
        
        ### Plugins
        
        Pull requests adding more commands to the core tool are very welcome.
        
        However, `hcl` also supplies an easy route to add functionality locally.
        The `--plugin` option allows you to supply the python import path
        or a file system path to a python script, containing third party commands.
        
        These should subclass `hcl.Command`, and allow you to control autocompletion,
        return codes and so on.
        See `hcl/commands.py` for examples on how to use this class.
        The `context` variable passed to the `Command`'s constructor
        is the main `hcl.cli.Cli` instance.
        
        ### Documentation
        
        Run `make docs` to automatically update this README's usage information,
        and the command documentation in `./commands`.
        CI checks whether these are up to date.
        
        ## Notes
        
        Very similar to [h5cli](https://pypi.org/project/h5cli/).
        `hcl` features:
        
        - more documentation
        - piping output from `--command` mode
        - doesn't crash when I try to run it.
        
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Python: >=3.8, <4
Description-Content-Type: text/markdown
