[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ELPA] New package: hierarchy

From: Damien Cassou
Subject: [ELPA] New package: hierarchy
Date: Tue, 17 Oct 2017 20:15:04 +0200


I would like to add my package 'hierarchy', a library to create and
display hierarchy structures, to ELPA. The hierarchy library has already
been used to implement a json navigator and a Javascript class hierarchy

I wrote a blog post describing it on Nicolas' blog:

My motivation for proposing this library to ELPA (instead of MELPA where
all my other packages are published) is that some developers might want
to have their hierarchy-dependent package on ELPA. Also, phil-s asked me
to do it: https://github.com/DamienCassou/hierarchy/issues/48.

I propose to put the single-file package hierarchy.el in ELPA and to
keep maintaining the project in a separate repository. I decided to
avoid using subtree or externals because my unit-test file (which is not
included here) depends on buttercup which is not on ELPA.

Longer description:

Creation: After having created a hierarchy with `hierarchy-new',
populate it by calling `hierarchy-add-tree' or `hierarchy-add-trees'.
You can then optionally sort its element with `hierarchy-sort'.

Querying: You can learn more about your hierarchy by using functions
such as `hierarchy-roots', `hierarchy-has-item', `hierarchy-length',
`hierarchy-parent', `hierarchy-descendant-p'.

Navigation: When your hierarchy is ready, you can use `hierarchy-map-item', 
and `map-tree' to apply functions to elements of the hierarchy.

Display: You can display a hierarchy as a tabulated list using
`hierarchy-tabulated-display' and as an expandable/foldable tree
using `hierarchy-convert-to-tree-widget'.  The
`hierarchy-labelfn-*' functions will help you display each item of
the hierarchy the way you want it.


Damien Cassou

"Success is the ability to go from one failure to another without
losing enthusiasm." --Winston Churchill

Attachment: hierarchy.el
Description: Text document

reply via email to

[Prev in Thread] Current Thread [Next in Thread]