Start a new topic

Drawers support

Drawers are a standard feature of org mode described in the manual https://orgmode.org/manual/Drawers.html They look like: ** This is a headline Still outside the drawer :DRAWERNAME: This is inside the drawer. :END: After the drawer. They can be folded or unfolded with the usual visibility cycling. On Android orgzly they are supported, and I use them there to hide code that is emacs dependent. Presently beorg simply ignore them. Drawers are also used for PROPERTIES, which are also ignored by beorg. It would be nice to add them at least in visibility cycling to ensure compatibility with beorg and orgzly.

1 person likes this idea

I have started work on support for drawers, including special recognition of PROPERTIES and LOGBOOK drawers. Such drawers will be hidden by default when exporting files/items and in notifications. You'll certainly be able to search for items with specific properties - for example "t shopping r shop supermarket" will find times tagged with "Shopping" and where a property "SHOP" is set to "Supermarket" (note search will be case insensitive).


This is likely to be released at the end of July/beginning of August.


2 people like this

I would definitely like to support drawers in general and PROPERTIES specifcally... I'd love to be able to write scheme filters against things like "style: habit" or "effort: 0:05" or other common uses of properties.


I'm going to try toying around with scheme to see if I can come up with a way of capturing just the properties drawer, but it's a bit clunky to play in that sandbox now without even a console.log equivalent.


It would also probably be best if drawers were ignored when showing push notificatons of scheduled items


I often have todo items that are like...

* headline that i'd like to see
SCHEDULED: <2019-07-11 Thu>
:PROPERTIES:
stuff_i_care_about: 0
...
:END:
body text that would be better to show than the properties drawer


I believe that there are many people really need this feature just like me !

Thanks for the clarification on this request. I guess there are a number of things to implement:


1. Getting beorg to parse drawers and then update/read the property drawer programatically

2. In the outliner there should be a way of expanding/collapsing drawers

3. When HTML is rendered (for use when showing notes in the item editor and for document export) drawers should be hidden as it doesn't make sense to show them here


1 person likes this
I was looking for drawer open/close cycling too. I use drawers to stash stuff so it doesn’t interrupt the flow of the document. Beorg just dumps all that as text right where it is. That’s better than losing it but not an elegant solution.

As someone that has a PROPERTIES drawer added to every item, I can't wait to see this implemented! 

I was only targeting folding/unfolding i.e. visibility cycling. If you support PROPERTIES you have to deal with visibility cycling; and it should not be difficult to include all drawers, and not only PROPERTIES.


My main concern was with compatibility with emacs and orgzly. You can have big drawers in file that are folded in emacs and orgzly, and appear as garbage in beorg.


I hope you can consider it while implementing PROPERTIES.

I do plan on recognising and supporting drawers in a future release. I'll take a look at how Orgzly presents these to the user as part of planning how I intend this to work. Support the PROPERTIES drawer will enable a number of additional features so I am keen to do this relatively soon.


3 people like this
Login or Signup to post a comment