A graph navigator is an open ended user interface with capabilities for:
A user interface can then be implementad as a navigator. The navigator has a current resource, an operations for
Let’s dig into some examples.
| Term | Specialization |
|---|---|
| Resource | Web page |
| Linked resources | Links on page |
| View current resource | Default view |
| Navigate to linked resource | Click link |
| Term | Specialization |
|---|---|
| Resource | Folder |
| Linked resources | Subfolders and symbolic links in folder |
| View current resource | ls |
| Navigate to linked resource | cd |
| Term | Specialization |
|---|---|
| Resource | Folder |
| Linked resources | Subfolders and symbolic links in folder |
| View current resource | Default view |
| Navigate to linked resource | Press RET on link |
| Term | Specialization |
|---|---|
| Resource | Git object |
| Linked resources | Related git objects |
| View current resource | Depends on type of Git object. |
| Navigate to linked resource | Press RET on link |
A graph navigator generator provides primitives and/or structure that enables creating graph navigators.
| Term | Specialization |
|---|---|
| Resource | Buffer |
| Navigate to resource | Press RET |
| Navigate to resource | Run command: M-x my-navigation-function |
| Term | Specialization |
|---|---|
| Resource | Line |
| Navigate to resource | Press RET |
| Term | Specialization |
|---|---|
| View resource | (datafy resource) |
| View resource links | Select links from (datafy resource) |
| Navigate to resource | (nav resource) |
???
I don’t even know where to start.
Disclaimer: my pet project.