reddit / emacs
Is there something like org roam but for files?
underconstructions · 2022-12-13 22:11
Org-roam is amazing, and I really wish if I can organize my hard drive files similarly, or even in any means of 'organization' because they are really misused up, and hierarchical directories never worked for me. Is there any partial tool/workflow you guys use?
I tried to use org-roam and mention file links inside some nodes, but this one also has gone painful because whenever I remove a file I've to update its nodes
00-11 · 2022-12-13 22:19
Dunno what org-roam does, but if you're looking for a non-hierarchical way to organize files, you might try [Bookmark+'s](https://www.emacswiki.org/emacs/BookmarkPlus) [tags](https://www.emacswiki.org/emacs/BookmarkPlus#BookmarkTags). In particular, you can [tag files](https://www.emacswiki.org/emacs/BookmarkPlus#TaggingFiles).
You can use tags any way you like, to get any kind of organization you like (including hierarchical, BTW).
A tag is any string (spaces, newline chars, anything). A tag can also include an associated Lisp value, besides the string - any Lisp value that's readable (only needs to be readable to be persistable and readable in another session).
hassanalsheikh · 2022-12-14 01:05
I used to use obsidian to manage everything in “My Documents” folder. Worked great in indexing/searching all the files it supported (pdf, images, txt) out of the box. You can use extensions to support other file types (you need to activate community plugins). But I noticed a drastic performance hit once the file count crosses 5 or 6 thousand files. And sometimes the program would not even start. I don’t know if they have fixed this issue in their latest upgrades.
Keep in mind that this use case is out of their scope. So I am not expecting them to support them being a file manager.
I set up my vault directory to be the root of “My Documents”
There will be no relationship between files unless you create markdown files and mention the image/pdf/txt…etc in the .md
I also used gnome file manager “GNOME Files, formerly and internally known as Nautilus”. This one is an amazing file manager and the indexing works like magic. At least in gnome version 42 point something. I remember when upgraded to version 43 things got toooooo laggy for my taste. I am on KDE now. Dolphin (kde file manager) have a different work flow and will not give you the smoother operation you’re after. It is powerful. But just different powerful.
mclearc · 2022-12-14 01:57
There’s hookmark — but I think it may only be for macOS.
https://hookproductivity.com/
publicvoit · 2022-12-14 09:11
Hi,
Well, this is somewhat a speciality of mine. ;-)
I did develop a file management method that is *independent of a specific tool and a specific operating system*, avoiding any lock-in effect. The method tries to take away the focus on folder hierarchies in order to allow for a **retrieval process** which is dominated **by recognizing tags** instead of remembering storage paths.
Technically, it makes use of filename-based time-stamps and tags by **the "**[**filetags**](https://github.com/novoid/filetags)**"-method** which also includes the rather unique [TagTrees feature](https://karl-voit.at/2017/08/28/filetags-tagtrees/) as one particular retrieval method.
The whole method consists of a set of independent and flexible (Python) scripts that can be **easily installed** (via pip; [very Windows-friendly setup](https://github.com/novoid/appendfilename)), **integrated into file browsers** that allow to integrate arbitrary external tools.
Watch the short [online-demo](https://karl-voit.at/demo-filetags-intro) and read the [full workflow explanation article](https://karl-voit.at/managing-digital-photographs/) to learn more about it.
Yesterday, somebody found out that filetags does share some **similarities with Prot's denote** which is discussed here: [https://github.com/protesilaos/denote/issues/117](https://github.com/protesilaos/denote/issues/117) You might want to read that as well. I added a comment with a few remarks how I'm using the concept within Emacs Org mode in particular.
akirakom · 2022-12-14 10:48
Not related to org-roam, but I manage media files in a separate repository from Org. Then use absolute links to refer to those files from Org, so there won't be deadlinks no matter how Org entries are organized.
I use git-annex for synchronization and recoll for search. No complex organization is necessary.
ftrx · 2022-12-14 10:59
Two notes: what you ask is a *recurrent* question that represent a desire for a thing most ignore and some deny, witch is: we need to migrate from classic taxonomies to search&narrow UIs/query-based UIs. We have done that for the original web (the hypertext concept), for it's evolution (from search engines to modern metadata-centrinc developments), for desktop environments from menus to "search&enter UI" and so on. Oh, sure it's hard, but the path it's clear and few see it for some aspects, most ignore, some reactionary deny.
The second note: personally I manage *most* my files via org-mode/org-roam. I've slowly org-attached them as single files or small trees to org-mode headings, accessing them via org-roam-node-find. For instance I have a note (an org-mode file) org-roam managed/accessed for my main home electricity bill, in the note I have a partial datetree with all invoices, org attached to the note itself in a small tree shaped like
[~/data/xx/xxxxxxx/]contract/{various,pdfs}
[~/data/xx/xxxxxxx/]invoice/yyyy/{MM-invoiceNum.pdf}
where `[~/data/xx/xxxxxxx/]` represent the org-attach managed filesystem, a subdir in my home with a cache-like structure inside, the top level is the first two chars of the org-id of the org-mode entry, the second level the rest of the ID, then my manually (semi-automatically) created/managed tree.
This allow a direct access just hitting a key on my keyboard who fire up `org-roam-node-find` few chars like `EDF` (my electricity local utility) than tab/enter to open the note. I can access a specific pdf bill from org-mode (a link) or all the bill of an year (dired, from another link) or all attached files for that note accessing the top level subdir. Links are just file: links.
Similarly for pretty anything else. The reason of using org-attach at the beginning is NOT having the burden of keeping up a curated taxonomy in the end I do not use, the reason of the internal manual mini-taxonomy is to allow comfortable classic file-system access for certain operations like attach some files en-masse to an email, work on some code in an attached repo etc.
Org-attach does NOT manage directories but do not complaint, it only create the first `[~/data/xx/xxxxxxx/]` and offer a couple of functions around (like org-attach-reveal to pops up dired) to manage files. The rest might be more or less simple automation or manual actions.
It's still NOT so automated, it's time consuming to automate, but that's an issue of modern IT crappy evolution not of Emacs/org-mode/org-roam itself. Let's just say that for the above example any company can offer a simple autenticated feed for the bill and a simple local feed reader can check and download them automatically in a local taxonomy updating the org-mode note automatically. It's VERY SIMPLE for the company who need a DMS anyway and for the user. But since most users ignore such aspects, do not know how to handle their own files and companies likes clicks on web porcals to trace and push ads...
ftrx · 2022-12-14 11:25
Personally I just use org-mode headings for the "metadata" part (where metadata means ALSO tags, but not limited to them) and org-attach for the "physical file(s)" handling.
For instance a note for `#+title: my ISP` (not the title I use, I use the ISP name) with some headings like
:PROPERTIES:
:ID: org-mode-id <= all files org-attached here in a small tree
:END:
#+title: my ISP
* Contract(s)
Signed <yyyy-mm-dd> for .... service see:
- [linked pdf of the contract]
- [linked SDD mandate for payments]
- ...
* Invoices
** 2019 <= link to invoices/2019 attached subdir
*** 01/Jan, invoice n. ... XXX€ <= like to the attached pdf
Received via [mail, link to relevant notmuch-managed mail] on <date>
...other infos if any...
** 2018 <= same
and the correspondent small attached tree like
~/data/org/mode-id/ <= cache-like tree managed by org-attach
contracts/
relavant files
of one/more contracts
invoices/
yyyy/
mm-num.pdf
where the small subtree might be created by hand or with some automation following a template and updated by hands and/or with some automation, similarly for the org-mode note.
It's not perfect, demand anyway a bit too much works even with crafted automation, but it's effective and allow both classic filesystem access for some limited pre-defined usages and direct search&narrow access. Unfortunately it's still a real filesystem, so not built out for queries like TMSU and similar tools, witch means I still have to pre-define some small tree without caring about a full home/top-level taxonomy and creating in future virtual fs-alike views is not easy.
However this questions and usages pops up regularly, see for instance
- https://didgets.substack.com/p/where-did-i-put-that-file
- yours https://www.reddit.com/r/emacs/comments/speq69/uomf_pathindependent_links_to_local_files_via/
- https://www.reddit.com/r/emacs/comments/so7os8/notdeft_notes_manager_with_xapianefficient/hw7opus/
and so on. Some do feel the need to avoid rigid taxonomies to manage files and information in general (mails, saved posts from Reddit/feeds/HN/usenet switching to search&narrow/query-based views, but most do not care and those, me included, who feel this needs or do not feel it enough or are happy enough with some partial solution to face such large PIM-centric problem witch is probably a far broader one.
Everywhere in IT the same information storage/access issue pops up from the "modern" network theory (I mean from Erdős to Barabási, the evolution of graph theory) to UIs where menus are substituted with "dashes" search&narrow, from books to hypertext and search engines, tag-based and search-based specialized UIs (from tagspace to zotero, but also notmuch/mu4e or GMail WebUI) and so on, but nothing seems to aim being a generic solution.
Just try to imaging the present world with banks that offer transactions as OFX feeds, grabbed with a classic feedreader who trigger per new entry some simple automation to record properly any new transaction, similarly pdfs invoices offered from the emitter DMS as an authenticated feed with the attached pdf and XML/*sv data to be processed in a similar automated fashion. It's FAR simpler for the customers and for the company, no need for modern web porcals, with their crappyness for users, sky-high costs for developments etc. A modern computing for modern classic connected systems, desktops and servers, around internet. It's a dream, but something perfectly usable with actual and yesterday tech, only if such problems solutions are seen and defined broadly...
skhairy · 2022-12-14 13:27
Look at denote package. It can be part of the solution.
schmooser · 2022-12-14 18:47
Second this, I use Org Roam for notes but denote-rename-file to have consistent file names. I then store them using org-attach under assets subdirectory.
schmooser · 2022-12-14 18:48
Johny Decimal looks quite interesting to try.
gmoutso · 2022-12-16 13:02
Checkout [https://github.com/oniony/TMSU](https://github.com/oniony/TMSU) if it may help. It does not have (bidirectional) links, only tags. Personally, I try to log things I create and search my log file.
On tags, ext4 has tags in xattrs and if I recall KDE could edit and search for them. Not sure about gnome or emacs. On this note, TMSU will lose its info if you move the file, but with the xattrs tag it will stay if you copy it to another ext4 drive / path.
rswgnu · 2022-12-20 05:24
This and denote seem to be the only native Emacs solutions suggested to this problem. Why do people so often discuss and utilize technologies outside emacs on an Emacs discussion group when Emacs gives you a full, dynamic, file-aware programming environment in which to build and deploy solutions? I am really just curious.