Wonderful ideas. Couldn’t get to the video yet but I did read the whole message. Probably respond over the weekend. Happy to work with you a bit on the hyperscope.
-- Bob > On Oct 29, 2020, at 9:14 PM, Jean Louis <[email protected]> wrote: > > Dear Robert, > > thank you for the explanations. > > * Robert Weiner <[email protected]> [2020-10-29 07:20]: >> 2. Although you can find elements of some of these things in many >> different packages, nothing brings them together and makes them >> effortless to accomplish via a single package like Hyperbole. > > That is right, there is plethora of packages reinventing the > wheel. Some packages have just few functions, or do to frames and > windows what is anyway inside of Hyperbole. > >> 4. Display URLs, pathnames with environment variables in them, or >> Tramp remote paths with {M-RET}. > > That is what I need in a fly mode. And I would like to propose that > one package that I am working on it, get included in Hyperbole > together. Maybe you could think about it. Then you would need to make > some few functions that I can use button "files" on the fly without > files. Package uses information in the PostgreSQL database. It > collects various hyperlinks, for example specific page in specific PDF > document. Specific video, or video with specific time to play it > from. It is similar by spirit to Hyperbole and Doug Engelbart's > work. It fits into Hyperbole package and is not polished yet that I > can provide it for testing, it will be soon. > > This would give to Hyperbole huge expansion. Hyperlinks are accessed > by using Emacs Lisp with ID like (hyperscope 29) and it would open > specific category. It is displayed by using tabulated-list-mode and > user can browse from one category to other and then open links. > > Some categories are simple text or could be any type of text bound to > different modes. Text comes from the database, not from the file > system. > > Databases can be hosted on Internet. Users can be assigned to > contribute and handle their tasks, jump from one to other task. One > database link could point to other database link at other server. It > can all get browsable by using web or gopher service. > > I just think that I have to figure out how to get Hyperbole buttons to > be used on the fly. That means if I open a buffer that I can associate > specific on the fly generated buttons to that buffer. Help me. > >> 6. Follow cross-references in Markdown, Info, Texinfo and Org mode >> with {M-RET}. > > I am using Hyperbole for Markdown. > > Help me understand what does Hyperbole do with Info? As Info already > has links. > >> 7. Jump to Emacs bookmarks or edit Org agenda items with {M-RET}. > > How do you jump to Emacs bookmark? > > If I display agenda with org-agenda what is difference that hyperbole does? > >> 8. Jump to my personal global buttons where I store quick >> abbreviations which display frequently used directories or >> invoke arbitrary code actions I have defined. > > I have that and use it to administer tasks or for the workflow. Like > upgrading servers for example. For some tasks that cannot be done in > one script but need my attention. > >> 9. Compose mail by pressing {M-RET} on an email address. > > That I use often, one time did not work. > >> 11. Make quit-window restore my window configuration to exactly the >> way it was before I invoked Emacs help whenever I press {q}. > > {q} is already bringing me back. This usage I would like to understand. > >> 12. Embed brace-delimited key series (multiple key sequences strung >> together) in my documents that are executed whenever I press >> {M-RET} on them. > > That is good. It is useful in teaching my staff members certain > actions. For example database maintenance actions or how to handle > communication with clients. > >> 13. Choose a buffer line to put at the top of a window via {M-RET} >> at the end of a line or at the window bottom with {C-u M-RET}. >> {C-l} has adopted something similar in recent years but you have >> to cycle through positions with that rather than a single >> press. > > {C-l} was always dubious and requires muscle learning to get it right. > >> 14. Jump to source code lines from grep -n outputs or stack traces in >> shell mode with {M-RET}. > > I can see that normal Emacs jumping to the searched string is more > accurate, as it jumps straight to the search. Hyperbole jumps to line > only. Here I do not see the difference, rather anti-feature. Please > comment that I understand better. Maybe Hyperbole was released before > grep -n worked how it works today. > > By the way I remember using or having Hyperbole all the time back in > time, I may be mistaken, but it could be already 18-20 years. Time is > passing. How I used it back then, who knows, I remember creating > various buttons. For me it was fascinating and I was reading whatever > there was to read. What I remember is that it was extension to > editor. > >> 15. Jump from an identifier use in code to its source definition >> with {M-RET}. > > That is feature that I use mostly. I do not know equivalent > built-in. I just do not know how it works for other programming > languages. > >> 16. Select groupings delimited by parens, brackets or braces in any >> mode with {M-RET} on the opening or closing delimiter. This >> also works with HTML and XML start and end tags, for quick >> selection. > > Great! Something new I've learned and it is useful, especially with > those longer functions where I need to remove chunks or debug it. > >> 17. {C-c RET} lets me select bigger and bigger syntactical units in >> many modes by repeatedly pressing it. I can go from a word, to >> a symbol, to a line, to a paragraph and beyond very easily. > > Great! Useful feature in text. And it works in Emacs Lisp as well. > >> 18. Together with Ace Window and Dired, quickly place buffers in >> windows wherever I like and then save window configurations for >> rapid recall later. I can name these configurations or use a >> window configuration ring similar to the kill ring, all >> accessible via Hyperbole quick key menu. > > Oh no!!!!! How I did not discover this earlier? This is great. > > Maybe I was always jumping over those menu items not understanding it > well. > >> 19. Create rapid layouts of window grids with {C-c @}, letting me >> see a bunch of existing buffers at once, either ones I've marked >> in Dired, recently used ones or those of a specific mode. > > That is great feature and I was watching about it on video. > > With those last two points above handling window configurations > becomes very easy. > > There are some frame control things to polish in Hyperbole. Not > everything works well. On the end of this message there will be link > to video that you may understand it. Keys are displayed. > >> 20. Rapidly grow, shrink and rearrange windows/buffers/frames with >> HyControl, Hyperbole's scriptable window and frame manager. > > That is great. Just not precise. > > Sometimes when I press arrow up, frame is moving not up, but > north-west. Then if I press arrow down, it continues moving up or > north-west. Randomg bugs. It is difficult to duplicate bugs. If you > follow carefully the video you may see few bugs taking place. > > Feature for frame and window control is great. > >> can move frames on screen by dragging with my middle mouse >> button depressed on each frame's bottommost modeline. > > How? Do I need to start frame control that it works? > >> I can clone the exact size and contents of a window to a new frame >> by just dragging my middle mouse button from the window to >> outside of any frame. > > How exactly? > >> 21. Create hierarchical, auto-numbered outlines in the Koutliner or >> use it to brainstorm any sort of list I need. > > 1b. One more. > idstamp: 4 > creator: "[email protected]" > create-time: "Oct 30 03:28:42 Africa/Nairobi 2020" > no-fill: t > > Would the creator field be different if other user adds new cell? > > In my hyperscope table entries some entries have last-user-modified > entry to know who was last. There is also last date modified. > > Koutlines give for me better, rigid structure of information. > > I may suggest a new function: Create button to cell, then the button > would be made either globally or somehow else for the user. That is > from Engelbart's works and is not implemented in many programs. > > If I am on specific position in text, I should be able to copy or > obtain reference link to that position. Then I can have collection of > references to multiple files for better research. > > Example would be when reading PDF that I can come with the mouse to > any line of text and obtain reference link. Then such link I can use > to open PDF on exactly that specific line of text. > > When I am on koutline cell I expect to be able to obtain the link > easy. I see there is function to jump to specific cell. That function > could be used in automated way. Then a button or my own hyperscope > linke or your button within hyperscope text could jump to Koutline at > specific cell. I have made it on my side that if I am on the link > "People" that I press {w} similarly like in {M-x eww RET} to obtain > the link, or kill it into memory. Then I can paste it or yank later > into other document. > > There is function insert link in Koutline. But it looks complex (for > now). If I am editing 3 files, one is about people, other about groups > of people, maybe I wish to kill the reference link into memory from > the file people from the cell about John Doe, so that I can insert > this reference link into the file with groups of people. Then person > could click on John Doe in that file for groups. Otherwise one need to > enter by hand the proper link to the file. I need that function. > > Also, I can make the hierarchical structure of the hyperscope being > developed to export into koutline format when I understand how it > looks internally. > >> Now I can embed Org tables in Koutlines too (in the latest git >> branch of Hyperbole) > > Org tables are not rigid and will destroy in my opinion the rigid form > of Koutline > >> and toggle this minor mode on and off by pressing {M-RET} on one of >> the table's | vertical dividers. I export Koutlines to HTML, >> or Emacs/Org outline files when needed. > > You could as well make on the fly exports to Org. You could generate > Org buffer and launch straight the exporting functions of Org and you > get all exports available for Koutline. > > That is what I plan to do for my database backed information manager, > which I would like to get included in Hyperbole as it belongs together > by principle. Or I could make it dependable on Hyperbole. > >> 22. Manage my contacts with HyRolo, allowing rapid full-text and >> logical search across any number of contact files, each of which >> is an Emacs outline of hierarchical contact records, e.g. people >> within an organization. > > That is great and pity I did not use it before years. I have been > managing contacts in text files. Today I manage 196000 contacts in the > database and there are too many parameters that would make text not > useful or tedious for work. > > Like I can add any skills into the list and mark contacts to have that > skill. Then I can search by the skill, narrow the search by using some > of completion modes and then find exact contacts with those > skills. Then SMS, initiate call, send fax or email or chat message to > the contact. > > Some contacts introduces many other people, I could award them. Text > file could become more confusing if I would need to manage in a more > free form. > > Though I consider HyRolo as a tool for remote staff members, including > for me, when I am on remote computers and need to call people. Remote > computers may not have my central database, but they have HyRolo from > GNU ELPA. > >> 24. Perform highly targeted web searches with the Hyperbole Find/Web >> menu. > > Feature exists in the library webjump as well. It may be easier to > setup in Hyperbole. > > What I do not know yet is how do I search Github if Google comes first > in the list? > >> 25. Use my own custom Hyperbole Helm menu that exposes many of the >> useful Helm commands that are hidden or hard-to-find by the >> default configuration when you load the package. > > You could do this: > > (global-set-key (kbd "C-c g") 'helm-command-prefix) > > Then you get something like > > - {C-c g c} to open up colors or > > - {C-c g f} to show buffers or > > - {C-c g r} for regular expressions > > - {C-c g t} for helm-top > > - {C-c g p} to kill some Emacs processes > > - {C-c g s} for surfraw > > - {C-c g m} for helm multi files and so on > > The video with bugs is here: > https://gnu.support/images/tmp/2020-10-30-03:12:53.ogv > > > -- > Thanks, > Jean Louis > ⎔ λ 🄯 𝍄 𝌡 𝌚
