DonationCoder.com Software > N.A.N.Y. 2011
NANY 2011 Release: TaskDaddy Release
daddydave:
Personally I had in mind that while the body can be determined after the due date, it wouldn't check for a colon in the text and just take it all :-)
-DeVamp (September 20, 2010, 05:18 AM)
--- End quote ---
But then it would miss the second category here:
@Stuff New stuff 2 #01/11/2010 the stuff @Project_Stuffy : hupla
--- End quote ---
and the due date here:
@Stuff New stuff 2 @Project_Stuffy the stuff : hupla #01/11/2010
--- End quote ---
But I am open to suggestions if you see a way out without requiring the parts of the task to be in a certain order. :)
It's just that I find the result strange:
You check for a colon to split the title and the body, but you still return the whole part after the due date. And not just the part after the colon.
--- End quote ---
I had in mind the user may want to specify multiple body fragments, just as the user may want to specify multiple categories. (Multiple due dates don't make sense obviously, probably I didn't check for this. Hmmm)
I need a little time to think about this, because you are raising a point which I had not thought of, which is a good thing. :up:
Actually there is a general problem to be solved here that I would very much like to solve..how to allow special characters to be non-special without cluttering up the syntax..for example what if I want a subject that starts with #? I thought about allowing something like a backslash..
But who wants to type:
\#This is not a due date just a weird subject @@Test
@Stuff New stuff 2 #01/11/2010 the stuff \: hupla
--- End quote ---
Yuck.
DeVamp:
For the colons:
My first idea:
As it is programmed now, we need to use 2 colons to keep 1:
@Stuff New stuff 2 #01/11/2010 the stuff @important_stuff hupla, do stuff @stiff_this even more stuff :: todostuff
--- End quote ---
gives
... even more stuff : todostuff
Actually there is a general problem to be solved here that I would very much like to solve..how to allow special characters to be non-special without cluttering up the syntax..for example what if I want a subject that starts with #? I thought about allowing something like a backslash..
-daddydave (September 20, 2010, 07:07 AM)
--- End quote ---
I'll think along with you. It will grow on me in the background while working on my work things.
Here's my quick idea:
We could also use 2 special characters to seperate a part:
(I've never understood why to use a '@' in front of a category, so I don't use them)
EX1:
@@Stuff New stuff ##01/11/2010 the stuff @@important_stuff hupla, do stuff @@stiff_this even more stuff : todostuff
--- End quote ---
Gives:
Subject : New stuff
Cat : Stuff, important_stuff, stiff_this
Due : 01/11/2010
Body : the stuff hupla, do stuff even more stuff :: todostuff
EX2:
@@Stuff Stuff again :: Need to exercise on : the other stuff aswell
--- End quote ---
Subject : Stuff again
Cat : Stuff
Due : N/A
Body : Need to exercise on : the other stuff aswell
One more thing:
I'm assuming you parse the string from left to right, but since I have no idea how you programmed it, I'm may be wrong.
BUT:
in ex1, after you've parsed the Subject, you know that you already have a subject, so I would assume the rest is automatically body, and then you have to parse the "body" for dates and categories and remove then from the body.
Wow, thats a lot in the preview.
I hope everything makes sense here :-)
If not, ask me so I can clear out things.
mouser:
a farr alias for TaskDaddy would be nice. smiley
--- End quote ---
Mouser, could you elaborate on this a bit more? It seems to me that after the first time you launch TaskDaddy using, say, td, then the next time I punch in td, it is going to go to TaskDaddy anyway, so why the need for an alias?
--- End quote ---
i was suggesting a regular expression alias to let you specify a TaskDaddy line from within FARR using the commandline version of TaskDaddy.
Why don't i just make an alias and post it -- actually it gives me an opportunity to add a feature to FARR that i've been meaning to add.
daddydave:
For the colons:
My first idea:
As it is programmed now, we need to use 2 colons to keep 1:
@Stuff New stuff 2 #01/11/2010 the stuff @important_stuff hupla, do stuff @stiff_this even more stuff :: todostuff
--- End quote ---
gives
... even more stuff : todostuff
-DeVamp (September 20, 2010, 08:08 AM)
--- End quote ---
Hadn't thought of that, but you're right, and that's pretty consistent with what I'm doing with categories and the @@. In that case it kind of happens automatically without any special programming, but I could extend that to make it so that ## creates a subject that starts with #.
(I've never understood why to use a '@' in front of a category, so I don't use them)
--- End quote ---
Still processing the rest of what you said, but I will address this. The @ in the category name, is basically fan service to David Allen's Getting Things Done book and method. Someone could use the @ symbol for categories that refer to GTD contexts, and use some other naming convention for regular categories or GTD projects.
One more thing:
I'm assuming you parse the string from left to right, but since I have no idea how you programmed it, I'm may be wrong.
BUT:
in ex1, after you've parsed the Subject, you know that you already have a subject, so I would assume the rest is automatically body, and then you have to parse the "body" for dates and categories and remove then from the body.
--- End quote ---
EDIT: True on the first part about parsing left to right, but as for the second part:
Nope, at no time are dates or categories part of the body. All TaskDaddy does is look at the first character of each word. If it's @, we have a category. If it's #, we have a due date. If it's a :, it's a body. If it's anything else unadorned, it has to decide whether to add it to the subject or the body (this bit is a bit clunky, if you look in TaskDaddyCore.au3 source attached in the original post, you will see kind of a funky DecideSubjectOrBody function)
the ugly code (some of it)
--- Code: AutoIt ---For $I = 1 To $MyArgs[0] Switch StringLeft($MyArgs[$I], 1) Case "@" If $Subject <> "" Then $GotSubject = True If $Categories <> "" Then $Categories = $Categories & "," $Categories = $Categories & StringRight($MyArgs[$I], StringLen($MyArgs[$I]) - 1) Case "#" If $Subject <> "" Then $GotSubject = True $DueDate = StringRight($MyArgs[$I], StringLen($MyArgs[$I]) - 1) Case ":" If $Subject <> "" Then $GotSubject = True $Body = $Body & " " & StringRight($MyArgs[$I], StringLen($MyArgs[$I]) - 1) Case "?" If $GotSubject = False Then $Subject = StringRight($MyArgs[$I], StringLen($MyArgs[$I]) - 1) $Importance = $olImportanceLow Else DecideSubjectOrBody($MyArgs[$I], $GotSubject, $Subject, $Body) EndIf Case "!" If $GotSubject = False Then $Subject = StringRight($MyArgs[$I], StringLen($MyArgs[$I]) - 1) $Importance = $olImportanceHigh Else DecideSubjectOrBody($MyArgs[$I], $GotSubject, $Subject, $Body) EndIf Case Else DecideSubjectOrBody($MyArgs[$I], $GotSubject, $Subject, $Body) EndSwitch Next
daddydave:
Here's my quick idea:
We could also use 2 special characters to seperate a part:
-DeVamp (September 20, 2010, 08:08 AM)
--- End quote ---
Isn't whitespace special enough to indicate it is a new part? Looking at your examples, you seem to suggest that a doubled character be required to signal that a part is out of sequence. But there is no such thing as out of sequence in TaskDaddy. You can specify the parts in any order.
Admittedly I kind of asked for this, I gave up on finding the cure for the general problem as the only cures I could come up with were worse than the disease.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version