Hi Eduardo: I enjoy reading your messages but if you could send a separate message with just a list if questions and then separate messages with things you want to explain and discuss, it would make it easier to respond
Thanks, -- Bob > On Sep 28, 2020, at 3:15 PM, Eduardo Ochs <eduardoo...@gmail.com> wrote: > > Hi Robert, > > I will try to answer all your e-mails in a single e-mail - in a new > thread. Yor e-mails are here: > > https://lists.gnu.org/archive/html/hyperbole-users/2020-09/index.html#00008 > > First: thanks for the hints, things are starting to make sense to me. > > We are clearly using different notions of simplicity - eev is like a > Volkswagen Beetle, in the sense that if you open its lid everything is > trivial to figure out and to fix, hack, and extend. > > It's nice that you said > >> I really, really recommend that you try to use Hyperbole without >> initially mixing it with eev, as I think you will find that >> Hyperbole already contains much of what you need to simplify eev and >> tie it to a broader Emacs ecosystem. > > because that sort of allows me to ask you to try eev! =) =) =) > I am not going to ask you to try eev without Hyperbole, though - I > tried to > > 1. make eev as non-invasive as possible - see: > > http://angg.twu.net/eev-intros/find-eev-intro.html#1 > > 2. make it trivial to navigate by people who have very short > attention spans and who have just a few spare minutes to play > with it. Here are the instructions: > > a. install eev with M-x list-packages, > > b. run M-x eev-beginner, > > c. learn how to use M-e and M-j to navigate the docs. See: > > http://angg.twu.net/eev-intros/find-emacs-keys-intro.html#1 > > Let me copy that section here: > > 1. Basic keys (eev) > =================== > The most basic keys of eev are: > M-e - to follow a hyperlink. Mnemonic: "(e)valuate"/"(e)xecute". > See: (find-eev-quick-intro "2. Evaluating Lisp") > (find-eev-quick-intro "3. Elisp hyperlinks") > M-j - to jump to certain predefined places. In particular, > `M-j' takes you to a buffer with basic help and a > list of jump targets. See: > (find-eev-quick-intro "7.2. The list of eejump targets") > `M-2 M-j' takes you to this help page. > `M-5 M-j' takes you to: (find-eev-quick-intro) > M-k - to go back. Mnemonic: "(k)ill buffer". > See: (find-eev-quick-intro "3. Elisp hyperlinks" "M-k") > > By the way, you asked me what this line of my e-mail does: > > (code-c-d "hyperbole" "~/.emacs.d/elpa/hyperbole-7.1.2/" "hyperbole") > > The answer is here: > > (find-eev-quick-intro "9.1. `code-c-d'") > > You can see the code that it runs by running this: > > (find-code-c-d "hyperbole" "~/.emacs.d/elpa/hyperbole-7.1.2/" "hyperbole") > > > > > > > > We are following different design principles. In my view, or, in eev's > view, Hyperbole uses an awful amount of markup syntax, and it keeps > the Elisp code too far from the user. Let me give you two examples, > and ask you a question about a technical point in which I am stuck. > > I am watching your video > > "Bring Your Text to Life the Easy Way with GNU Hyperbole" > http://www.youtube.com/watch?v=nC1eTgZE1oA > > and I am indexing it with the tricks described here: > > http://angg.twu.net/eev-intros/find-audiovideo-intro.html#4.3 > > The video made me understand that Hyperbole's action key works on > {Implicit Buttons}, <(Explicit Buttons)>, and <(Global Buttons)> - > from 17:00 in the video onwards - and from 19:06 onwards you show that > the action key also works on pathnames enclosed in double quotes, in a > way that supports lots of abbreviations. That's REALLY nice - but let > me point to you that eev's hyperlinks can to point to arbitrary > positions in files, manpages, PDFs, etc, and I don't know if the "#" > syntax in Hyperbole's hyperlinks can do that... see: > > http://angg.twu.net/eev-intros/find-refining-intro.html > http://angg.twu.net/eev-intros/find-pdf-like-intro.html#4 > > Ok, time for my technical question. Apparently this Hyperbole button > > {C-h h d a} > > should have essentially the same action as: > > (eek "C-h h d a") > > but my `eek' sexp just inserts an "a". It's trivial to inspect the > innards of how the function eek works - we just have to search for its > source code, and it is just this: > > (defun eek (str) (interactive "sKeys: ") > "Execute STR as a keyboard macro. See `edmacro-mode' for the exact > format.\n > An example: (eek \"C-x 4 C-h\")" > (execute-kbd-macro (read-kbd-macro str))) > > Your key sequence buttons work well on key sequences like {C-h h d a}, > but I couldn't find a function that on receiving the string like "C-h > h d a" would execute it as a key sequence, like this would do, > > (execute-kbd-macro (read-kbd-macro "C-h h d a"))) > > but without the bugs... I grepped for "key sequence" in the Hyperbole > source directory and created a link to the result of that grep, > > (find-hyperbolegrep "grep --color -niH --null -e 'key sequence' *.el") > > to be able to go back to that easily. I guess that the function that I > am looking for is in: > > (find-hyperbolefile "hib-kbd.el") > > but I couldn't find it... and typing C-h A didn't help me much. I have > the feeling that C-h A would be better if it would say which function > the action key would call - I mean, something more precise than saying > "hui:hbut-act". > > Cheers, > Eduardo Ochs > http://angg.twu.net/emacsconf2019.html >