I'd love to be able to generally use repeating entries, but also have the ability to skip specific days. example:
** TODO swim practice
SCHEDULED <2013-12-18 17:30-18:30 +1w>
However, I know in advance there won't be a practice on 2013-12-25. When I mark the item done, however, it will be rescheduled for 2013-12-25. I'd love something as simple as a property like:
** TODO swim practice
SCHEDULED <2013-12-18 17:30-18:30 +1w>
:PROPERTIES:
:EXCEPTION_SCHEDULED: <2013-12-25>
:EXCEPTION_SCHEDULED: <2014-01-01>
:END:
But, I don't see any easy way to accomplish this (except sexp's... which are painful and ugly). I looked at writing my own hook, but the hooks for state changes are called after the state change, but before the new date has been repeated. I thinking about catching it post-update and seeing if it matched an exception and then calling the re-scheduling routing again.
Anything I'm missing?
The function org-class might help. It lets you set schedule weekly events with certain weeks or holidays skipped. This TODO entry will schedule a class for every Wednesday between 2013-12-18 and 2014-12-31 except for weeks 1 and 52:
** TODO swim practice
SCHEDULED: <%%(org-class 2013 12 18 2014 12 31 1 3 1 52) 17:30-18:30>
You can also do
** TODO swim practice
SCHEDULED: <%%(org-class 2013 12 18 2014 12 31 1 3 'holidays) 17:30-18:30>
to skip any day Emacs knows to be holiday or give strings like "New Year's Day" to skip only specific holidays.
Related
I am using the bootstrap datetime picker.
I have set enabledHours between 8 am to 5 pm and stepping to 30. When i pick the current hour to be 5 pm and increment the minute by one step,the result is a invalid date(5:30 pm). The expected result is not to allow incrementing the time, as it produces invalid date.
Same goes for hours also. E.g. if I pick the time as 4:30 pm and try to increment the hour by one step, it produces 5:30 pm which is not valid according to the enabled hours.
Any workaround for this issue?
I found my answer here: https://stackoverflow.com/a/31950948/495000
Turns out the trick is to use the disabledTimeIntervals option instead of EnabledHours.
Note that disabledTimeIntervals takes an array of arrays - representing a list of disabled ranges.
For example, I needed the following, which disables the times between 12:00 AM to 06:59 AM, and between 6:01 PM and 11:59 PM (technically 12:AM the next day the way it's written...). If you consider the inverse, this means I'm enabling from exactly 7:00 AM to exactly 6:00 PM.
.datetimepicker({
format: 'hh:mm A',
stepping: 15,
disabledTimeIntervals: [
[moment().hour(0).minutes(0), moment().hour(6).minutes(59)],
[moment().hour(18).minutes(1), moment().hour(24).minutes(0)]
]
I use org-mode to clock working time. I also have a few capture templates which work great for, well, capturing thoughts, notes, tasks, etc, without a lot of disruption.
What I would like to add but I'm not sure how to go about it, is to have a capture template for logging notes on the currently open clock. I would like the captured text to go to both the current clock as well as to an index file which will be just a running index of what I logged. The result of this will be that my clock entries would look like this:
** TODO Setup custom capture template for logging to clock and index file
CLOCK: [2014-09-03 Wed 08:43]
- this is a captured note, posted an update to SOF (this one)
- this is a captured note, posted question to SOF
CLOCK: [2014-09-03 Wed 08:07]--[2014-09-03 Wed 08:29] => 0:22
- this is a captured note, scratched my head a while
CLOCK: [2014-09-02 Tue 17:07]--[2014-09-02 Tue 17:25] => 0:18
- another captured note
For this same time period, my task-index.org file would look like:
[2014-09-03 Wed 09:34] - this is a captured note, posted an update to SOF (this one)
[2014-09-03 Wed 09:05] - this is a captured note, posted question to SOF
[2014-09-03 Wed 08:07] - this is a captured note, scratched my head a while
[2014-09-02 Tue 17:15] - another captured note
The timestamp in the index file would be the link-back target (%a in the template?) from where the entry was originally captured could not illustrate that link using the SOF syntax).
I don't have anything to share because my biggest problem is that I'm not sure where to begin. I could create the capture template but I'm not sure how I would make it put a plain list item in the current clock nor how to make a hook from a template that would go off and put in the index entry.
Help of any sort would greatly appreciated!
Is there some way to automatically run a pre- and post-build script in Flash Builder/Eclipse to track the amount of time spent compiling throughout the day? Basically I'd want something like this:
Pre-Build: Output timestamp to file (or set some sort of Eclipse variable, if possible)
Post-Build: Read starting timestamp from file, subtract from current timestamp, append this build time to another file (or add to a running total)
The idea is that I can track how much time I spend throughout the day just waiting for my project to compile, to make a case for the product team to spend some time improving build times, as it would end up saving us time in the long-run.
It seems like I might be able to do this with Flex Ant Tasks, but 1) I've never set up a Flex Ant Task, so I'm not sure how, and 2) coming from the world of Visual Studio, it seems like there'd be some easy way to set scripts to run before and after compilation.
I know this probably doesn't work either (since it requires ant-contrib), but we use the "Stopwatch" task of ant-contrib.
http://ant-contrib.sourceforge.net/tasks/tasks/
Also, ant-contrib has some other very useful features like:
if
for
foreach
PropertyRegex
Variable
Example of the end of our build scripts:
BUILD SUCCESSFUL
Total time: 37 minutes 46 seconds
[timestamp]: Build started on: Sat Aug 31 06:05:50 PDT 2013
[timestamp]: Build completed on: Sat Aug 31 06:43:35 PDT 2013
[timestamp]: Total Build Time: 37 Min 45 seconds
Finished: SUCCESS
I currently have this quartz cron string 0 0/35 11-13 1/1 * ? *. Now what it generally means is Occurs every 1 day(s) every 35 minute(s) between 11 AM and 1 PM. At least from my understanding that is what it means. Though when I look at possible run times I get these.
06/08/2013 11:00:00 AM
06/08/2013 11:35:00 AM
06/08/2013 12:00:00 PM
06/08/2013 12:35:00 PM
06/08/2013 1:00:00 PM
That does not make sense to me. It seems to reset on the hour. Is there anyway for this not to occur? I would like the job to run at 11AM, then 11:35AM and then 12:10PM not 12PM.
Any and all help would be greatly appreciated.
Yes , this is the problem my colleagues encounters every now and then.
As per the documentation for Quartz scheduler ( and yes off-course, as per my understanding of Quartz till now :-p ), cron trigger will be set to fire at "every 35th minute of the hour" and not "every 35th minute in a day".
For your requirement you should use a simple-trigger .
Date firetime=null; //initialize to Your start time of trigger "11.00am"
Date endtime=null; // initialize to Your end time of trigger "1.00pm"
Trigger tr1 = TriggerBuilder
.newTrigger()
.startAt(firetime)
.endAt(endtime)
.withIdentity("First Trigger", "First Group")
.withSchedule(
SimpleScheduleBuilder.simpleSchedule()
.withIntervalInMinutes(35)
).build();
And use another trigger to schedule this trigger daily.:-)
I have a calendar file which I will post below. The problem is that when I load this into outlook the date says the 24/02/2011. The date in the file as shown below is the 22/02/2011
(START:201102*22*T100000).
I am in Sydney/Australia if that makes any difference.
Can anyone try adding this to their outlook calendars and see if the date is wrong?
Here is a link to the file: http://www.onlinerego.com/small_business_summit2011/assets/template/ics/sydney.ics
Thanks so much.
BEGIN:VCALENDAR
PRODID:-//http://testing.cdw/thegoldbook///NONSGML kigkonsult.se iCalcreator 2.8//EN
VERSION:2.0
METHOD:PUBLISH
BEGIN:VEVENT
UID:20110208T111839EST-4800GDFvWN#http://testing.cdw/thegoldbook/
DTSTAMP:20110208T000239Z
DESCRIPTION;LANGUAGE=en:Thank you for registering to attend the 'Trend Micr
o Affinity Partner Small Business Summit 2011'.\n\nWe look forward to seei
ng you at the event!\n\nDate: 22 February\nVenue: Novotel Darling Harbour\
, Terrace Room\nAddress: 100 Murray St\, Darling Harbour\nArrival time: 10
:00am\n\nAgenda\n10.00am - Pre registration & Networking\n10.30am - Exploi
ting Small Business Trends to increase your profits\, By Toby Lee\, Global
Vice President\, Volume Business Unit\, Trend Micro\n11.00am - Product Ro
admap for Small Business\, By Richard Ku\, Global Vice President\, Small B
usiness Product Management\, Trend Micro\n11.15am - Break\n11.45am - Affin
ity Program and Channel Engagement Update\, By Malcolm Pooley\, ANZ Small
Business Channel Sales Manager\n12.00pm - Q&A Panel\n12.15pm - Close\n\nUR
L - http://www.onlinerego.com/small_business_summit2011/thankyou.php?city=
Sydney
DTSTART:20110222T100000
DTEND:20110222T121500
LOCATION;LANGUAGE=en:Novotel Darling Harbour\, Terrace Room\, 100 Murray St
\, Darling Harbour
SUMMARY;LANGUAGE=en:Trend Micro Affinity Partner Small Business Summit 2011
URL:http://www.onlinerego.com/small_business_summit2011/thankyou.php?city=S
ydney
END:VEVENT
END:VCALENDAR
I'm also in Aus.
Loading into my google (sydney time) gives Tue, 22 February, 21:00 – 23:15 - so wrong times but right date. Google may assume it is UTC time and are we currently +11, that may explain it's time. No idea what outlook is doing.
windows calendar has 22 feb and 10 am
my own app also gives 22 Feb and 10 am
The way dates are specified and whether you have a timezone or not makes a difference.
The file does not have a timezone spec and the dates are specified in "local" format - ie: should translate to 10 am in whatever timezone you load it into ... dangerous as if it were a conference call meeting across timezones for eg, it should have a timezone associated with it.
Either in the DTSTART
DTSTART;TZID=America/New_York:20101031T190000
or using the X-WR-TIMEZONE custom field
X-WR-TIMEZONE:America/New_York
Sorry no idea what outlook is doing though (I do not use it).