Feature Request: Title independent of namespace path

Problem

Namespace implementation is spectactular and appreciated. However, it punishes the user experience by putting the path (namespace) in the title, essentially muddying “what it is” with “where it lives.” This means that if a user has a complex namespace with an already long title, e.g.,

Root/Level 1/Level 2/Level 3/A longer descriptive title

It displays as

Root/Level 1/Level 2/Level 3/A longer descriptive title

And as such within any search or lookups showing that title. And since we’re namespacing it means we likely have a lot of content, and then you realize how quickly your search fills up with visual clutter when you’re trying to just jump to a single page

Vision/Expected

At the least I would like the page title to display as

A longer descriptive title

Without the namespacing in it. And the ability to display as such in any queries.

Workarounds

For queries one can use the alias:: property to display the short title without namespace instead and use that in table display by toggling off page and on alias

Ideas

  • Could add a first class “title-display::” property
  • Could add a first class “namespace::” property that instead separates the namespace from the title in display
  • ?

Thank you for considering my request!

An alternate workaround would be to use tags so your pagename can be anything without thinking about namespaces.

#root/level1/level2/level3

Or if you want longer levels with spaces bewteen:

#[[root/level 1 with description/level 2 with description/level 3 with description]]

@JeRoen that doesn’t work with ToC unfortunately, it just creates a toc of empty tag pages.

I would pose an alternative solution that prevents the user from having to maintain these friendly names, and instead have Logseq manage these friendly names. For example, roam research provides the user options to change the way namespaces appear:

  • No change in behavior
  • Only the child page name is displayed, and parent nodes are hidden from the title name.
    • [[Page 1/Sub Topic/Discussion]] would display as [[Discussion]] unless you go to rename the page.
  • Abbreviate parent nodes to display only the first letter
    • [[Page 1/Sub Topic/Discussion]] would display as [[P/S/Discussion]].

As they appear in Roam Research:

6 Likes

I completely agree with you – thank you! I would honestly be happy with any solution and adapting an existing pattern as the first step is usually the best step forward, then iterate based on user feedback.

2 Likes