Back to the talks Previous by track: Emacs core development: how it works Next by track: Using Koutline for stream of thought journaling Track: General

Top 10 ways Hyperbole amps up Emacs

Robert Weiner - Pronunciation: like fine 'wine' and 'er',,

Format: 140-min talk; Q&A: BigBlueButton conference room
Status: Q&A finished, IRC and pad will be archived on this page


Duration: 2:19:13 minutes



We will count down the top ten ways that GNU Hyperbole can improve your Emacs productivity and experience through:

  • its magical ability to turn ordinary text into hypertext

  • its legal-style auto-numbered outlining

  • its fast, record-based lookups

  • and its rapid, programmable ability to control all of your frames and windows.

Hyperbole has no required external package dependencies and is compatible with and tested against every major Emacs version from 27 to the latest master branch and works on every major computer operating system and window system in use today, so you can run it regardless of your environment.


Questions and answers

  • Q: Do buttons keep their metadata within the same file? E.g. would I see it if I change to fundamental-mode?
    • A: Summarizing: if it\'s an explicit button the metadata is in a different file in the same directory, \".hypb\". If it\'s an implicit button, no, no metadata in the buffer; such buttons have no metadata, Hyperbole creates all of the button properties from the existing text in the buffer.
  • Q: Is it possible to link to a file by its ID (denote, Org ID, or some similar unique string inside)?
    • A:
  • Q: Re: the frames example: any thoughts or consideration for a transient interface? Or, is this something one could already toggle?
    • A: Hyperbole predates many of the newer features and packages and Emacs but they integrate as they find them useful for Hyperbole. They think the current minibuffer menu is pretty good and don\'t have plans to have a transient menu
  • Q: Re: multi-file search functionality. Why not implementing it within the existing framework of M-x grep or similar built-in commands? Yet another search interface sounds a bit redundant.
    • A:
    • The point is: why not upstream search interface?
  • Q:
    • A:
  • Q: Hyperbole\'s been around for a number of years now.  What inspired you to write it back around the time of its birth?
    • A: Born before the Web.  The Web was born in the middle of a Hyperbole version\'s development.  Seemed like an explosion of unstructured information was imminent, e.g. needing to deal with many emails, non-database-structured info.  Needed a general system that could work with other general systems like emails, document production.  Was researching at a university on \"Personalized Information Environments\" (PIEs).  PIEs was an architecture with managers (like Hyperbole) and point tools that would leverage the managers (e.g. an email reader as a point tool to leverage the hypertext manager).  Wrote a Gmail-like system years before Gmail (also similar to Rmail).  Allowed buttons embedded in Rmail drawn from the subject of the email message.  Rule-based processing was included, etc.
  • Are you familiar with embark package? I think there is some overlapping functionality with Hyperbole. 
    • A: Yes, recently started using it.  Have talked to oantolin (Omar Antolin Camarena), the author.  Thinks that Embark and Hyperbole are compatible, much like Hyperbole and Org are.  All of these tools can be used together well.
  • Q: Wow. What you are describing now reminds me a lot about HyperCard that I grew up on. Do you know if Hyperbole inspired Bill Atkinson or if you were inspired by HyperCard? Or were there just a lot of thought about hypercontextuality around that time?
    • A: Bob\'s research on PIEs was seen by Apple and helped to inspire their work on the Newton, which later also inspired the iPhone, et al.
  • Q: Is it possible to only use one feature of hyperbole without the others (i.e. using only the implicit/explicit buttons without hycontrol, hyrolo...)? (without having to rewrite part of the code in hyperbole) in order to be able to load a smaller hyperbole (hyperbole is now quite large).
  • Q: Is there a link to the video for this talk?  I woke up too late for it! It was done live, so the recording will be added after the conference organizers have time.

  • thanks bob i heard about hyperbole long time ago now it is time to revisit with this beautiful presentation

  • nice presentation, bob!
  • no metadata no problemo
  • Q: for anyone who uses hyperbole is there a way to delimit a button like you create text that is shaped like a button but you don't want it to be a button?
  • i'm intersted in hyperbole it's on my todo list of looking into for emacs stuff
  • Great talk thank you bob!
  • thanks for showing hyperbole, always been curious about it. makes me think there's an overlap with ffap, hyperbole and even treesitter in a way
  • i'm going to look into hyperbole for sure now. it's been on my to do list
  • Bob has a long history of doing impressive work :)

Questions or comments? Please e-mail

Back to the talks Previous by track: Emacs core development: how it works Next by track: Using Koutline for stream of thought journaling Track: General