Re: [PATCH] ox-icalendar.el: customizable vevent summary prefix

2022-07-31 Thread Mikhail Skorzhinskiy
Thanks for review, Ihor. I have sent a copyright assignment request. Will 
resubmit the patches as soon as I complete the process.

-- 
  Mikhail Skorzhinskii
  mskorzhins...@eml.cc

On Sun, Jul 31, 2022, at 09:16, Ihor Radchenko wrote:
> Mikhail Skorzhinskii  writes:
>
>> Thank you for the reviewing my suggestions. I've fixed issues you've
>> listed. I've attached new patch to this email.
>>
>> Let me know what you think.
>
> Sorry again for the late reply.
> The patch looks good, though you may also need to document the new
> customization in etc/ORG-NEWS.
>
> However, note that your previous patch is 15LOC, which is the maximum
> contribution size we can accept without copyright assignment.
> See https://orgmode.org/worg/org-contribute.html#copyright
>
> Best,
> Ihor



Re: [PATCH] org-agenda.el: customise outline path in echo area

2021-12-26 Thread Mikhail Skorzhinskiy
Glad to hear that.

Should I resubmit the patch in this thread? I agree with your change.

Thanks, Mikhail

-- 
  Mikhail Skorzhinskiy
  mskorzhins...@eml.cc

On Sun, Dec 26, 2021, at 16:44, Ihor Radchenko wrote:
> Mikhail Skorzhinskii  writes:
>
> Thanks for the patch! The addition looks reasonable to me.
>
>> +    (title (when (and file-or-title (string= file-or-title
>> 'title))
>> ...
>> +  (and file-or-title bfn (concat (if (and (string= file-or-
>> title 'title) title)
>
> (string= file-or-title 'title) will match FILE-OR-TITLE values "title"
> and 'title. I am not sure if it is what you intended to achieve.
> Probably, a simple (eq file-or-title 'title) would be sufficient.
>
> Best,
> Ihor



Re: Can Org warn me if I create a time conflict?

2019-12-18 Thread Mikhail Skorzhinskiy
I think there is a package exactly for this:

https://www.mail-archive.com/emacs-orgmode@gnu.org/msg123154.html

I'm happily using this since summer with latest org. Although in case you want 
to extend  scheduling function (ie check it automatically) you  need to write 
write some code around.

I can send you my customizations on  top of that package, but at the end of  
the week, im in vacation currently.

-- 
  Mikhail Skorzhinskiy
  mskorzhins...@eml.cc

On Wed, Dec 18, 2019, at 09:02, Allen Li wrote:
> On Wed, Dec 18, 2019 at 7:06 AM David Rogers
>  wrote:
> >
> > It's currently possible for me to create two meeting times, one from 
> > 8:00-10:00 tomorrow and the other from 9:00-11:00 tomorrow.
> >
> > When both are mentioned in the same sentence, as above, it's easy to 
> > recognize that the two meetings are probably incompatible. But org-mode 
> > allows agenda items to be created at different times and in different 
> > files; it's possible to create Meeting #1 far in advance, have enough time 
> > to forget that Meeting #1 exists, and then create Meeting #2 covering the 
> > same period of time. (Compare this with the wall calendar made of paper, 
> > where if I try to add Meeting #2 I'll be forced to write it in the same 
> > physical space, and therefore automatically be alerted before making the 
> > error.)
> >
> > Is there any method to get org-mode to alert me (by an error message, or a 
> > red mark in the agenda, or whatever) that I've created a conflict - 
> > specifically, a method that doesn't involve me having to remember to 
> > perform any type of conflict-checking myself? If I could remember to do 
> > things like conflict checks, I wouldn't really need org-agenda anyway. :-)
> >
> > I realize that it's likely some situations *do* require timed events to 
> > happen concurrently - but I don't believe that they're the usual case for 
> > an individual. Having an "ignore conflict" or "accept anyway" type of 
> > option would make sense to me for such situations.
> 
> Does org-clock-consistency-checks support your needs?
> https://orgmode.org/manual/Agenda-commands.html
> 
> >
> > --
> > Thanks
> > David
> >
> 
>



[O] Effort esitmates and agenda filtering

2017-01-31 Thread Mikhail Skorzhinskiy
When I apply some filtering to emacs agenda, total efforts calculation
remain unchanged. As Carsten Dominik said [1], it's due to how filtering
works, and can't be fixed.

Is something have changed since 2009? And if not, is there any new
corner ways or hacks to see total effort caluclation based on filtering?
For example, org-agenda-skip looks pretty good candidate for it.

Tanks!

o Links

[1] https://lists.gnu.org/archive/html/emacs-orgmode/2009-10/msg9.html

--
Skorzhinskiy Mikhail



Re: [O] Temporary cancelling recurring tasks

2017-01-26 Thread Mikhail Skorzhinskiy
Take a look to http://karl-voit.at/2017/01/15/org-clone-subtree-with-time-shift/

On 2017-01-26T13:39:50+0300, Michael Welle wrote:

> Hello,
> 
> I want to temporary cancel recurring tasks. Let's say I have tasks, that
> only make sense when I'm in my office. Now I'm away for a few months.
> The tasks would clutter my agenda. I could comment them, archive them or
> use org-cancel-repeater and set the task's state to DONE. But all that
> makes it hard to restore the previous state when I'm back in my office.
> 
> I think, the clean solution is to set the state of the task to CANCELLED
> or STOPPED or something like that, to deactivate the recurring task.
> When I activate the task again, the scheduled date and the repeater
> should be restored. To achieve that, I tried the following:
> 
> 
> ;;
> ;; Deactivate/Activate recurring tasks
> ;;
> 
> 
> ;; Prior to Org commit 7d52a8c3cc86c8ce03eda006752af1ab4bed4316
> ;; there seems to be no way to set the repeater of a, let's say,
> ;; SCHEDULED property programmatically. So we use this function.
> (defun hmw/org-schedule-set-value (val)
>   "Sets the value of the SCHEDULED property. This allows for
> setting the repeater as well."
>   (interactive)
>   (save-excursion
> (org-back-to-heading t)
> (let ((bound1 (point))
> (bound0 (save-excursion (outline-next-heading) (point
>   (when (re-search-forward
>(concat "\\(" org-scheduled-time-regexp "\\)")
>bound0 t)
>   (replace-match val t nil nil 2)
> 
> (defvar hmw/org-scheduled-property-backup "DISABLED-SCHEDULED"
>   "Back up the original value of the SCHEDULED property into this
> property when deactivating a recurring task. The value is rescued from
> this property to initialise the SCHEDULED property when activating the
> task again.")
> 
> (defvar hmw/org-activated-recurring-task-state "TODO"
>   "Switch a recurring task to this state after activating.")
> 
> (defvar hmw/org-deactivated-recurring-task-state "CANCELLED"
>   "Switch a recurring task to this state after deactivating.")
> 
> (defun hmw/org-deactivate-recurring-task ()
>   "Deactivate a recurring task. The value of the SCHEDULED property is
> stored in the property referenced by `hmw/org-scheduled-property-backup',
> so it can be restored later. The task's state is set to the value of
> `hmw/org-deactivated-recurring-task-state'." 
>   (interactive)
>   (when (org-entry-is-todo-p)
> (save-excursion
>   (org-back-to-heading t)
>   (let* ((pom (point-at-bol))
>  (val (org-entry-get pom "SCHEDULED")))
> (when val
> ;; Remove the time stamp meaning. We don't want active
> ;; timestamp to trigger any actions for the deactivated
> ;; task.
> (setq val (replace-regexp-in-string "^<\\(.*\\)>$" "\\1" val))
> (org-entry-put pom hmw/org-scheduled-property-backup val)
> (org-entry-put pom "SCHEDULED" nil)
> (org-todo hmw/org-deactivated-recurring-task-state))
> 
> (defun hmw/org-activate-recurring-task ()
>   "Activate a previously deactivated recurring task. The value of the
> SCHEDULED property is retrieved from the property referenced by
> `hmw/org-scheduled-property-backup', which is then deleted. The task's 
> state is set to the value of `hmw/org-activated-recurring-task-state'."
>   (interactive)
>   (when (org-entry-is-done-p)
> (save-excursion
>   (org-back-to-heading t)
>   (let* ((pom (point-at-bol))
>  (val (org-entry-get pom hmw/org-scheduled-property-backup)))
> (when val
> ;; For Org commit 7d52a8c3cc86c8ce03eda006752af1ab4bed4316 or
> ;; later use this
> ;;(setq val (replace-regexp-in-string "^\\(.*\\)$" "<\\1>" val))
> ;;(org-entry-put pom "SCHEDULED" val)
> 
> ;; For older Org use this
> (org-entry-put pom "SCHEDULED" val)
> (hmw/org-schedule-set-value val)
>   
> (org-entry-delete pom hmw/org-scheduled-property-backup)
> (org-todo hmw/org-activated-recurring-task-state))
>  
> 
> The idea is to store the value of the SCHEDULED property somewhere when
> the task gets deactivated. Later, on activation, the property value is
> restored.
> 
> There are two variants. The one above, which should work for Org prior
> to commit 7d52a8c3cc86c8ce03eda006752af1ab4bed4316 and also for later
> revisions. And one for that commit and later. If you use the newer Org
> revision, you optionally can get rid of the function
> hw/org-schedule-set-value and follow the comments in
> hmw/org-activate-recurring-task.
> 
> Regards
> hmw
> 


-- 
Skorzhinskiy Mikhail



[O] Export agenda view into CSV with properties

2016-12-30 Thread Mikhail Skorzhinskiy
I have a bunch of scripts, that draws me a couple of nice pictures and
stuff. They take data from agenda CSV export.

I'm wondering, is there any easy way to export some properties from
agenda view too?

--
Skorzhinskiy Mikhail