Slightly unrelated:<p>> As an aside, I also use this technique for navigating code with Vim, where a single shortcut goes to a definition of a function in a new pane<p>I was intrigued by this, and searched the author's github for their .vim. This is how they do that:<p>nnoremap gF <c-w>vgF<p><a href="https://github.com/szymonkaliski/dotfiles/blob/357fc7c76ca86042effba7836fc8b4101057d285/Dotfiles/vimrc#L570">https://github.com/szymonkaliski/dotfiles/blob/357fc7c76ca86...</a><p>and<p>nnoremap <silent>gD :call CocActionAsync('jumpDefinition', 'vsplit')<cr><p><a href="https://github.com/szymonkaliski/dotfiles/blob/357fc7c76ca86042effba7836fc8b4101057d285/Dotfiles/vim/after/plugin/coc.vim#L56">https://github.com/szymonkaliski/dotfiles/blob/357fc7c76ca86...</a><p>---<p>Edit: This is what I ended up with, lua, nvim:
`buf_set_keymap('n', 'gds', '<c-w>v<cmd>lua vim.lsp.buf.definition()<CR>', opts)`<p>I made it a different map from the normal gd, so that I can choose to open in a new split or just jump to the one in my current window - I don't want a new split if e.g. a variable is define just 20 lines above my current one.
This is pretty neat!<p>And I strongly suggest that you contact Kay Xu <Kai.Xu@nottingham.ac.uk>, who is doing research on sensemaking [1] [2] and berrypicking [3], I think he is currently working on newer and better version of his approach with browser extensions (as opposed to a separate renderer), and you both would benefit from collaboration.<p>[1] <a href="https://vis4sense.github.io/sensemap/paper.pdf" rel="nofollow">https://vis4sense.github.io/sensemap/paper.pdf</a><p>[2] <a href="https://vis4sense.github.io/sensemap/" rel="nofollow">https://vis4sense.github.io/sensemap/</a><p>[3] <a href="https://web.archive.org/web/20080112091521/http://www.gseis.ucla.edu/faculty/bates/berrypicking.html" rel="nofollow">https://web.archive.org/web/20080112091521/http://www.gseis....</a>
I made something like this over 20 years ago.<p>It also had full text searching of the contents of the page and also worked as a browser history.<p>I used it for a few years.<p>The real solution I saw in a roomful of butcher paper tucked in cabinets in the basement of a really dedicated guy who had a learning disability. He went through textbooks and had to come up with his own special syntax in order to comprehend the text by rearranging the contents on these giant rolls effectively making a hybrid between a mind map and a zui.<p>He had a "linking" idea that involved an indexing system where you'd get another roll of paper out of the cabinet earmarked with labels and then unrolled it to the "linked" region. Then he'd fold it back on a table and have them both side by side.<p>The general applicability was immediately apparent. I worked on it as a new way to browse the web over 10 years ago for a few months but then didn't stick with it.<p>I keep telling myself I'll work more on it but you know, anxiety and depression sucks. You can even use llms to do smart ontological labeling now.<p>The pieces are right fucking there. All I need to do is pick them up.
"I shared a preview on Twitter, to a surprisingly overwhelming response, but I got distracted with other things and never got back to the project".<p>Creates rabbit-holing browser, gets distracted....<p>All jokes aside, the description of the Vim functionality reminds me of the Whisper browser for Squeak, that had something of a depth-oriented SmalltalkBrowser to avoid the inevitable proliferation of windows in the normal course of things. Interesting that enough functionality for reorienting source browsing like that in Vim is about two lines of config. But, of course, the Whisper browser had stacking of things as well as sideways browsing, and new UI.
This is sweet! When we made Chrome some of us (OK only me) were enamoured with an IE shell browser named iRider - it had tree style tabs and pinning, so was useful in very similar ways<p>IIRC one of the things they did well that could work here is batch control of tabs by dragging across them - you could click on a close or pin button, then drag vertically across other tabs to apply that action - it made handling the glut ever-spawning tabs very easy
Looks like the stuff of dreams <i>and</i> nightmares for a ADHD user.<p>Am I the only one who regularly ends up a browsing session with 300 tabs? This feels like a feature I'd overuse, and which would only make my life much worse.
Interesting! Some overlap with these Firefox add-ons:<p>- Tree Style Tabs: <a href="https://addons.mozilla.org/en-US/firefox/addon/tree-style-tab" rel="nofollow">https://addons.mozilla.org/en-US/firefox/addon/tree-style-ta...</a>
(more simplistic, no session saving functionality)<p>- Tree Tabs: <a href="https://addons.mozilla.org/en-US/firefox/addon/tree-tabs" rel="nofollow">https://addons.mozilla.org/en-US/firefox/addon/tree-tabs</a>
(more complex, can also save sessions, but incompatible with some other add-ons and not evaluated for security by Mozilla)<p>Neither rearrange tabs in the window, just offer an alternate tree listing of open tabs.
Everybody is talking about the existential risk posed by AI but this guys release this tool in the wild without any rail guards... concerning, really.<p>A bit more seriously, it can be really useful to have a graph of ArXiv tabs instead of a linear range of tabs, this can be very handy when doing a dive in scientific literature.
yes bring us back proper "hypertext".<p>A browser should behave just like browsing documents, we can go back and forth, each "view" should be cachable and savable, not the 20MB main.min.js SPA crap!
Best line ever from a post about someone who built a browser optimized for rabbit-holing:<p><pre><code> I shared a preview on Twitter ↗, to a surprisingly overwhelming response, but I got distracted with other things and never got back to the project.</code></pre>
>Yes, it's sometimes good to know how you ended up somewhere, but I think what's most valuable about "research" is the synthesis part — grabbing parts of larger wholes, rearranging, recombining, thinking with the material. A small step in this direction could be persisting scroll position or maybe selection, and making the history editable — allowing users to remove dead ends, add notes, etc.<p>I need to know how this guy will escape the curse of reimplementing a less-VR version of XanaduSpace over HTTPS. Will search his RSS.
I specifically just switched back from chrome to Firefox after about 10 years, because there were still no native hierarchical tab solutions in chrome.<p>FF + sideberry for every day use and rabbit holing.
I've been using Gingko Writer [1] since it was "gingkoapp" -- it's similar in how information is structured (hierarchical vs linear), but focused on creating, not consuming. The tool permits a rather free-flow approach to compiling things in various scopes [2], and can render a final linear work product from it.<p>OP's browser and gingko mashed up together would be the perfect thing -- find/explore/learn, annotate, synthesize, organize, and combine into a finished thing, be it a reference or a proof.<p>1: <a href="https://gingkowriter.com/" rel="nofollow">https://gingkowriter.com/</a><p>2: <a href="https://vimeo.com/639232763" rel="nofollow">https://vimeo.com/639232763</a>
The parallel browsing has strong resemblance to Xanadu from Ted Nelson's, which was a proposed web protocol and browser.<p>But I am vague about Xanadu's browser as I only seen it as a brief flash in Werner Herzog's Lo and Behold, Reveries of the Connected World.
I really would like to implement that multiple panes feature into Emacs, that "column-mode" could be interesting for code browsing.<p>And a column mode for Tree Style Tabs in Firefox (or Orion/Servo/etc)
This is also how search in IDEs should work.<p>Each new search term should open a new results panel, with space for the source code on top, and a list of hits at the bottom. Results panels are in an infinite horizontal row.
This brings back memories. Szymon is/was also active in minimal/experimental music scene [0] back in the days. I think in my hometown (Poznan, Poland) back those 10-15 years ago, there was some self-made small art-hacker community. Great to see his work again!<p>[0]: <a href="https://flic.kr/p/9jz4Gh" rel="nofollow">https://flic.kr/p/9jz4Gh</a>
As a "Watership Down" fan, if I were ever go down the rabbit-holing rabbit hole, I'd be tempted to name the resulting tool "flayrah" (or maybe "Rabscuttle").<p>But in the meantime (my current rabbit holing technology being a text file in a side window), I'm more than happy to try out everyone else's!
I had this exact idea and I've described it to colleagues before. Fun to see parallel evolution. It feels like a simple concept that should already exist, so I'm surprised it's not more commonly attempted. But you're missing a few of the features that I came up with that build on the initial idea. I haven't gotten around to implementing it yet, but it's on my todo list for this year/next year.<p>I was planning to build it with ultralig.ht, but I'm not 100% sure if it's ready for it. But since most of the content I'm interested in for research is textual/reader mode, and the rest can be viewed with yt-dlp, I think it can render them and it seems the lightest weight. Otherwise it's webkit or servo that I could think of for this.<p>Good to know there's interest in this.
This is great, I appreciate the ability to save and restore the "trails".<p>Similarly to OP and many other like-minded commenters, I've also built an interface for rabbit-holing [0].
This is a 10 year old, purely JS+CSS solution you can open in your browser. It's limited to Wikipedia and its UI seems broken after Wikipedia's style updates, but nevertheless wanted to share the source code [1] for anyone who's interested<p>[0] <a href="https://amadeusw.com/WikiDive/" rel="nofollow">https://amadeusw.com/WikiDive/</a>
[1] <a href="https://github.com/AmadeusW/WikiDive">https://github.com/AmadeusW/WikiDive</a>
We developed a solution in the same space called Skipper (<a href="https://chromewebstore.google.com/detail/skipper-fewer-tabs-more-f/cjiinmicahhdcmfpdohhaahgkdiehfga" rel="nofollow">https://chromewebstore.google.com/detail/skipper-fewer-tabs-...</a>)<p>Two features to help with rabbit holing, both automatic:<p>1. Close tabs that are not used for the ongoing topic<p>2. Group the browsing history by topic so that users can go back and review their research journey<p>Here's the website: <a href="https://www.skipper.co/" rel="nofollow">https://www.skipper.co/</a>
I raised the feature of side by side panes as something desirable in Firefox and got pushback in replies[0] proclaiming people couldn't imagine why anyone would want it / that it was solely a domain of the DE. Happy to see that someone figured out that it did make sense.<p>[0]: <a href="https://news.ycombinator.com/context?id=40786937">https://news.ycombinator.com/context?id=40786937</a>
Looks similar to TST extension. Actually not sure what the difference is. Even the outline is available in TST. Based on first screenshot more design-y?
Cool, thanks for sharing.<p>Been using the grouping and pinning feature in chrome for a bit then saving the groups i care about to try to emulate this behavior, but still a long way off from ideal; the one dimension of tabs at the top level means the UI gets crowded quickly.<p>Had the tree-style tabs extension for a bit but didn't love its interface and found it to be more trouble than it was worth.
While writing my thesis, I made a similar thing as a chrome extension.<p>It kept track of all tab opens & showed it in a node structure.<p>Screenshot: <a href="https://github.com/Taborniki/node-search/blob/pre-alfa/demo.png">https://github.com/Taborniki/node-search/blob/pre-alfa/demo....</a>
Is there a way to get this running without having to install the tool chain to build this? Is this an Electron app? Is Electron Fiddle [1] what I am looking for? Can I have Electron Fiddle in the browser?<p>[1] <a href="https://www.electronjs.org/fiddle" rel="nofollow">https://www.electronjs.org/fiddle</a>
Lately, I've been thinking about how you might bring notebooks to web browsing...something that would make it easier for an LLM to interact with your browsing and thought process. This was timely because it got me thinking more about how what I'm thinking of relates to rabbit-holing.
Orion - Safari with support for FF/Chrome extensions (ALSO on iOS. For free), and has tree-style tabs if you enable it.<p>My browsing has become so much more enjoyable. Also, since it’s almost the same as Safari, great resource management, great gestures, great performance. Definitely recommended
This is brilliant. I currently do this in org mode, pasting bookmarks in long indented trees of research.<p>This is that but next level, many thanks for sharing your work.<p>Following rabbit holes, if the trail is preserved, turns my ADHD from inconvenient distraction into a research superpower.
There was also this approach many years ago which i absolutely adored:
<a href="https://news.ycombinator.com/item?id=9724414">https://news.ycombinator.com/item?id=9724414</a>
This is exactly how the old OPML browsers used to work back in the web 2.0 era. Always thought it was a neat interface, although I'd keep content in one pane, scrollable back to previous windows.
This is a little like I a features I wish macOS spaces or Vision Pro screen arrangements provided.<p>To be able to group, name, save, browse and retrieve multi-space/screen contexts.<p>I would end up with some projects I open and close frequently. And a growing list of started projects, which would be much more likely to continue for being so easy to resume.<p>Not being able to put away and resume contexts (of any kind) is a significant cognitive and productivity impediment.<p>A separate do-undo chain or tree for context edits, in addition to content, would be nice too. I.e. see a context history of what windows I closed, to quickly reopen something.<p>Seeing a lot of this in a browser is inspiring.
We can definitely still innovate in the browser space - I quite like the history concept.<p>Firefox‘s history could definitely use a remake, I find it pretty close to useless currently.
This is the first time I've seen actual utility in being able to stuff a "web browser" in a pane of a GUI program developed in the language of your choice. The ability to take the metadata of browsing, the links, and especially the knowledge of the connections between clicked URLs, as the basis of a knowledge graph, is the closest I've seen someone come to the Memex[1] in a long time.<p>Add the ability to add notation, ratings, etc... to that knowledge in a structure, and I think you've got a winner.<p>Oh.. and store EVERYTHING required to show the page, or save a view of it that's independent of the live internet... that's the other key part of the Memex.<p>[1] <a href="https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/" rel="nofollow">https://www.theatlantic.com/magazine/archive/1945/07/as-we-m...</a>
> For example, a good window manager could replace Cartographist almost completely<p>I can see a neat way of doing this with Niri[0] and its recent IPC layout interface, combined with an extension like URL in Title[1] to expose the full window URL to the wm. Someone may need to hold my beer<p>[0]: <a href="https://github.com/YaLTeR/niri">https://github.com/YaLTeR/niri</a>
[1]: <a href="https://chromewebstore.google.com/detail/url-in-title/ignpacbgnbnkaiooknalneoeladjnfgb" rel="nofollow">https://chromewebstore.google.com/detail/url-in-title/ignpac...</a>
Reminds of Hofstadter's concept of the "Parallel Terraced Scan". Kind of a mix between breadth-first and depth-first search or unsupervised learning.<p>Nice write-up here: <a href="https://www.menimagerie.com/manuscripts/2018/6/9/v-douglas-hofstadter-and-parallel-terraced-scan" rel="nofollow">https://www.menimagerie.com/manuscripts/2018/6/9/v-douglas-h...</a>