Re: [O] random weekly event
July, 15 at 23:58 Thorsten Jolitz wrote: Ivan Kanis i...@kanis.fr writes: I need to have org agenda (and then appt) manage an event once a week. The catch is that is should happen at a random day and hour. My thinking is that populating programmatically a year entry is probably the sanest way to go about it. Has anyone else done it? This is not an arcane scientific solution, but should give a random timestamp for between tomorrow and the end of the current week. You could write a function (using run-with-timer) that runs this sunday at 00:00h and inserts a todo item with the returned timestamp into an agenda file: Hi Thorsten, Thanks it will get me there when I will write it. I turn off emacs at home and at work so the run-with-timer will not work. Take care, Ivan -- Hard drive sleeping. Let it wake up on it's own... -- BOFH excuse #43
[O] random weekly event
Hi, I need to have org agenda (and then appt) manage an event once a week. The catch is that is should happen at a random day and hour. My thinking is that populating programmatically a year entry is probably the sanest way to go about it. Has anyone else done it? Ivan -- Repeated reboots of the system failed to solve problem. -- BOFH excuse #20
Re: [O] random weekly event
Ivan Kanis i...@kanis.fr writes: Hi, I need to have org agenda (and then appt) manage an event once a week. The catch is that is should happen at a random day and hour. My thinking is that populating programmatically a year entry is probably the sanest way to go about it. Has anyone else done it? This is not an arcane scientific solution, but should give a random timestamp for between tomorrow and the end of the current week. You could write a function (using run-with-timer) that runs this sunday at 00:00h and inserts a todo item with the returned timestamp into an agenda file: #+begin_src emacs-lisp (defun tj/return-random-timestamp-this-week () Insert random timestamp for this week. (interactive) (let* ((cal-info (decode-time (current-time))) (dow (nth 6 cal-info)) (year (nth 5 cal-info)) (month (nth 4 cal-info)) (day (nth 3 cal-info)) (hour (nth 2 cal-info)) (random-day (+ day (1+ (random (- 5 dow) (random-hour (random 23)) (random-minute (random 59)) (random-second (random 59))) (format-time-string %D %R (encode-time random-second random-minute random-hour random-day month year #+end_src #+results: : tj/return-random-timestamp-this-week #+begin_src emacs-lisp :results raw (let (res) (dotimes (i 10 res) (setq res (concat res (format %d: %s\n (1+ i) (tj/return-random-timestamp-this-week)) #+end_src #+results: 1: 07/17/14 17:39 2: 07/16/14 18:18 3: 07/18/14 19:21 4: 07/17/14 12:58 5: 07/16/14 15:30 6: 07/16/14 16:17 7: 07/16/14 04:10 8: 07/16/14 21:37 9: 07/17/14 19:22 10: 07/16/14 13:39 -- cheers, Thorsten
Re: [O] random weekly event
Thorsten Jolitz tjol...@gmail.com writes: Ivan Kanis i...@kanis.fr writes: #+begin_src emacs-lisp (defun tj/return-random-timestamp-this-week () Insert random timestamp for this week. (interactive) (let* ((cal-info (decode-time (current-time))) (dow (nth 6 cal-info)) (year (nth 5 cal-info)) (month (nth 4 cal-info)) (day (nth 3 cal-info)) (hour (nth 2 cal-info)) (random-day (+ day (1+ (random (- 5 dow) (random-hour (random 23)) (random-minute (random 59)) (random-second (random 59))) (format-time-string %D %R (encode-time random-second random-minute random-hour random-day month year ups, should be probably rather this: , | (random-day (+ day (1+ (random (- 7 dow) ` limit is not included, see ,[ C-h f random RET ] | random is a built-in function in `C source code'. | | (random optional LIMIT) | | Return a pseudo-random number. | All integers representable in Lisp, i.e. between `most-negative-fixnum' | and `most-positive-fixnum', inclusive, are equally likely. | | With positive integer LIMIT, return random number in interval [0,LIMIT). | With argument t, set the random number seed from the current time and pid. | With a string argument, set the seed based on the string's contents. | Other values of LIMIT are ignored. | | See Info node `(elisp)Random Numbers' for more details. | | [back] ` -- cheers, Thorsten
Re: [O] random weekly event
Thorsten Jolitz tjol...@gmail.com writes: ups, should be probably rather this: , | (random-day (+ day (1+ (random (- 7 dow) ` grrr ... (- 6 dow) of course -- cheers, Thorsten