Trevoke / org-gtd.el

A package for using GTD with org-mode
GNU General Public License v3.0
376 stars 46 forks source link

Documentation missing #52

Closed mobatmedia closed 2 years ago

mobatmedia commented 3 years ago

The documentation of the ways of working with org-gtd is missing, so I can only get help from these issues.

Trevoke commented 3 years ago

Eep! You're right, that's terrible. I'm about to have a bunch of free time, I will this in the next two weeks (seriously - leaving my job, so I'm gonna have zero excuses)

mobatmedia commented 3 years ago

That's so hard core of you. Thanks!

mobatmedia commented 3 years ago

Please include something about how to fix a suddenly non-functional NEXT to DONE causing next TODO to become NEXT?

Trevoke commented 3 years ago

Well I was way more burned out than I thought and I didn't get to this in over a month.

The feature that triggers the change from TODO -> NEXT like this is from org-edna so you should be able to do M-x org-edna-load RET. You may need to manually close and reopen the org-gtd buffers before org-edna will work on those buffers again.

I'll prepare something more comprehensive about how this package thinks and how to use it this week.

Trevoke commented 2 years ago

Okay, I have finally edited and hopefully cleared up the README some. I think one of the reasons TODO -> NEXT may have been broken was because org-edna got updated and I didn't adjust the README config to use (org-edna-mode 1). Please let me know if this is better!

mobatmedia commented 2 years ago

Thank you. How do I upgrade org-gtd to get the fix in my current setup?

Trevoke commented 2 years ago

Hopefully, going through the "Configure" section of the readme should get you setup properly.

I think it's likely you will need to close actionable.org manually to get the system working again. Let me know if that is not enough.

mobatmedia commented 2 years ago

Thank you.

The configure section asks me to use "use-package" so I installed this one: https://github.com/jwiegley/use-package (Is this package a dependency for org-gtd?) However, use-package errors out saying it "failed to parse package org-gtd". Can you help me figure out how to fix this?

mobatmedia commented 2 years ago

I dropped the use of ":pin melpa-stable" in the use-package, not it seems I am in.

mobatmedia commented 2 years ago

At this point, every time I process a project from my inbox, it ends up in incubate.org. This has actually been happening for a while.

BTW, this is one reason why I wanted to move projects from incubate to actionable.

mobatmedia commented 2 years ago

I have verified that the NEXT to DONE triggers the TODO to NEXT. I use customizations in Emacs, so I customized org-edna-use-inheritance to t and org-edna-mode to t, and I saved the change.

Trevoke commented 2 years ago

If your projects end up in incubate.org, you might need to clear the refile cache with (org-refile-cache-clear) ? What is happening to you is not something I've come across before.

As for use-package, I will need to clarify the readme, you do not need to use it, but you can choose to, it is a tool to help organize your emacs configuration.

And thank you for verifying that org-edna is working properly!

mobatmedia commented 2 years ago

Thank you.

Unfortunately (org-refile-cache-clear) does not resolve the problem.

In org-gtd--project, the refiling target (org-gtd--refile-target org-gtd-projects) seems to find is in incubate.org at a line with the word "Project". Does that tell you how I can fix this? The line is specifically this: ** Deploy [[https://docs.aws.amazon.com/sagemaker/latest/dg/sagemaker-projects.html][SageMaker MLOps Projects]] :mlops: Deleting that line seems to have resolved the problem.

That suggests that the org-gtd refiling system is fragile.

mobatmedia commented 2 years ago

The org-gtd--refile-target function is strange to me. Why does it bind org-refile-targets to the value of (org-gtd--refile-targets) and then ignore that variable and instead use (org-refile-get-targets)? Does that first line in the let* have a side effect?

Trevoke commented 2 years ago

org-refile-targets is a hard-coded variable that is used by org-mode when it finds the refile targets, so if I want to create a custom list of refile options, I need to change that variable.

I think in a past refactor I might have lost the line of code where I reset org-refile-targets to its prior value.

Trevoke commented 2 years ago

Re: refiling finding a target in incubate.org at a line called Project, yep, that makes sense, I think I'll need to make some adjustments to how refiling is implemented. The trick is in figuring out a good way to do this that doesn't get in the way of what the user does, because refile targets seem to be limited to ... having a specific tag, or todo keyword, or being at a given level, or having some specific text.

So the simplest thing that would be pretty unambiguous would be a custom tag, I'll have to try this.

Trevoke commented 2 years ago

I'm making a change in v2.0 that will help with this, without getting in the way of user-facing settings (e.g. tags or headlines).

In v1.x, if you want to fix that, you'll need to change your "Projects" heading in your incubate.org file, sorry :/

Closing this issue for now, but please reopen if I dropped the ball on something or if something's not satisfying for you!

Trevoke commented 2 years ago

org-refile-targets is a hard-coded variable that is used by org-mode when it finds the refile targets, so if I want to create a custom list of refile options, I need to change that variable.

I think in a past refactor I might have lost the line of code where I reset org-refile-targets to its prior value.

oh, this -- turns out let restores the old values of variables when the let block closes, so I don't have to manually restore the value.