* Shift-Arrow Pass Through for windmove?
@ 2010-04-22 20:30 Daniel E. Doherty
2010-04-23 16:01 ` Sebastian Rose
2010-04-23 16:12 ` Sebastian Rose
0 siblings, 2 replies; 13+ messages in thread
From: Daniel E. Doherty @ 2010-04-22 20:30 UTC (permalink / raw)
To: emacs-orgmode@gnu org
All,
I make *very* frequent use of the shift-arrow keys to move from window
to window inside emacs via windmove. It is probably the most frequent
key combination I access.
Anyway, is there a way to make org-mode friendlier to it by passing the
key along whenever org-mode would otherwise throw an error. For
example, when not on a heading, when in the agenda, and wherever else?
I really like Carsten's use of the arrow keys for structure editing and
don't want to lose that, just whenever org-mode can't make use of the
keys.
Regards,
--
===============================================
,----[ Law Offices ]
| Daniel E. Doherty
| 7300 W. 110th Street, Suite 930
| Overland Park, KS 66210
| 913.338.7182 (Phone)
| 913,338.7164 (FAX)
`----
================================================
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-22 20:30 Shift-Arrow Pass Through for windmove? Daniel E. Doherty
@ 2010-04-23 16:01 ` Sebastian Rose
2010-04-23 16:12 ` Sebastian Rose
1 sibling, 0 replies; 13+ messages in thread
From: Sebastian Rose @ 2010-04-23 16:01 UTC (permalink / raw)
To: Daniel E. Doherty; +Cc: emacs-orgmode@gnu org
Daniel E. Doherty <ded-law@ddoherty.net> writes:
> All,
>
> I make *very* frequent use of the shift-arrow keys to move from window
> to window inside emacs via windmove. It is probably the most frequent
> key combination I access.
>
> Anyway, is there a way to make org-mode friendlier to it by passing the
> key along whenever org-mode would otherwise throw an error. For
> example, when not on a heading, when in the agenda, and wherever else?
>
> I really like Carsten's use of the arrow keys for structure editing and
> don't want to lose that, just whenever org-mode can't make use of the
> keys.
Yes, that would be helpfull!
I guess you could do this:
(defun my/org-windmove-right-maybe (&optional arg)
(interactive "P")
(if (and (not (org-on-heading-p))
(not (org-at-item-p)))
(windmove-right arg)
(org-shiftright arg)))
;; and bind it in org-mode-hook:
(add-hook 'org-mode-hook
(lambda ()
(define-key org-mode-map [(shift right)]
'my/org-windmove-right-maybe)))
Sebastian
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-22 20:30 Shift-Arrow Pass Through for windmove? Daniel E. Doherty
2010-04-23 16:01 ` Sebastian Rose
@ 2010-04-23 16:12 ` Sebastian Rose
2010-04-23 18:54 ` Carsten Dominik
1 sibling, 1 reply; 13+ messages in thread
From: Sebastian Rose @ 2010-04-23 16:12 UTC (permalink / raw)
To: Daniel E. Doherty; +Cc: emacs-orgmode@gnu org
[-- Attachment #1: Type: text/plain, Size: 860 bytes --]
Daniel E. Doherty <ded-law@ddoherty.net> writes:
> All,
>
> I make *very* frequent use of the shift-arrow keys to move from window
> to window inside emacs via windmove. It is probably the most frequent
> key combination I access.
>
> Anyway, is there a way to make org-mode friendlier to it by passing the
> key along whenever org-mode would otherwise throw an error. For
> example, when not on a heading, when in the agenda, and wherever else?
>
> I really like Carsten's use of the arrow keys for structure editing and
> don't want to lose that, just whenever org-mode can't make use of the
> keys.
>
> Regards,
And here all the arrow keys.
It's somewhat inelegant, since you always need to keep track of new
useful org-bindings.
I would find an org-internal solution helpfull too. I use windmove.
Actually, your email made hack this together :)
[-- Attachment #2: Type: application/emacs-lisp, Size: 1305 bytes --]
[-- Attachment #3: Type: text/plain, Size: 14 bytes --]
Sebastian
[-- Attachment #4: Type: text/plain, Size: 201 bytes --]
_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-23 16:12 ` Sebastian Rose
@ 2010-04-23 18:54 ` Carsten Dominik
2010-04-23 23:19 ` Sebastian Rose
0 siblings, 1 reply; 13+ messages in thread
From: Carsten Dominik @ 2010-04-23 18:54 UTC (permalink / raw)
To: Sebastian Rose; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org
On Apr 23, 2010, at 6:12 PM, Sebastian Rose wrote:
> Daniel E. Doherty <ded-law@ddoherty.net> writes:
>> All,
>>
>> I make *very* frequent use of the shift-arrow keys to move from
>> window
>> to window inside emacs via windmove. It is probably the most
>> frequent
>> key combination I access.
>>
>> Anyway, is there a way to make org-mode friendlier to it by passing
>> the
>> key along whenever org-mode would otherwise throw an error. For
>> example, when not on a heading, when in the agenda, and wherever
>> else?
>>
>> I really like Carsten's use of the arrow keys for structure editing
>> and
>> don't want to lose that, just whenever org-mode can't make use of the
>> keys.
>>
>> Regards,
>
>
>
> And here all the arrow keys.
>
> It's somewhat inelegant, since you always need to keep track of new
> useful org-bindings.
>
> I would find an org-internal solution helpfull too. I use windmove.
I have now added
(defvar org-shiftup-hook nil
"Hook for functions attaching themselves to `S-up'.
See `org-ctrl-c-ctrl-c-hook' for more information.")
(defvar org-shiftdown-hook nil
"Hook for functions attaching themselves to `S-down'.
See `org-ctrl-c-ctrl-c-hook' for more information.")
(defvar org-shiftleft-hook nil
"Hook for functions attaching themselves to `S-left'.
See `org-ctrl-c-ctrl-c-hook' for more information.")
(defvar org-shiftright-hook nil
"Hook for functions attaching themselves to `S-right'.
See `org-ctrl-c-ctrl-c-hook' for more information.")
But I do not intend to attach specific functionality like windmove to
them,
and I'd like to reserve the possibility to make S-cursor do something
in Org in more contexts.
Hope this still helps.
- Carsten
>
> Actually, your email made hack this together :)
>
>
> <mime-attachment>
>
> Sebastian
> _______________________________________________
> Emacs-orgmode mailing list
> Please use `Reply All' to send replies to the list.
> Emacs-orgmode@gnu.org
> http://lists.gnu.org/mailman/listinfo/emacs-orgmode
- Carsten
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-23 18:54 ` Carsten Dominik
@ 2010-04-23 23:19 ` Sebastian Rose
2010-04-24 0:11 ` Carsten Dominik
0 siblings, 1 reply; 13+ messages in thread
From: Sebastian Rose @ 2010-04-23 23:19 UTC (permalink / raw)
To: Carsten Dominik; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org
Carsten Dominik <carsten.dominik@gmail.com> writes:
> On Apr 23, 2010, at 6:12 PM, Sebastian Rose wrote:
>
>> Daniel E. Doherty <ded-law@ddoherty.net> writes:
>>> All,
>>>
>>> I make *very* frequent use of the shift-arrow keys to move from window
>>> to window inside emacs via windmove. It is probably the most frequent
>>> key combination I access.
>>>
>>> Anyway, is there a way to make org-mode friendlier to it by passing the
>>> key along whenever org-mode would otherwise throw an error. For
>>> example, when not on a heading, when in the agenda, and wherever else?
>>>
>>> I really like Carsten's use of the arrow keys for structure editing and
>>> don't want to lose that, just whenever org-mode can't make use of the
>>> keys.
>>>
>>> Regards,
>>
>>
>>
>> And here all the arrow keys.
>>
>> It's somewhat inelegant, since you always need to keep track of new
>> useful org-bindings.
>>
>> I would find an org-internal solution helpfull too. I use windmove.
>
> I have now added
>
> (defvar org-shiftup-hook nil
> "Hook for functions attaching themselves to `S-up'.
> See `org-ctrl-c-ctrl-c-hook' for more information.")
> (defvar org-shiftdown-hook nil
> "Hook for functions attaching themselves to `S-down'.
> See `org-ctrl-c-ctrl-c-hook' for more information.")
> (defvar org-shiftleft-hook nil
> "Hook for functions attaching themselves to `S-left'.
> See `org-ctrl-c-ctrl-c-hook' for more information.")
> (defvar org-shiftright-hook nil
> "Hook for functions attaching themselves to `S-right'.
> See `org-ctrl-c-ctrl-c-hook' for more information.")
>
> But I do not intend to attach specific functionality like windmove to them,
> and I'd like to reserve the possibility to make S-cursor do something
> in Org in more contexts.
>
> Hope this still helps.
This could be perfect!!!
But wouldn't the hook need to be called at the end of (e.g.)
`org-shiftright'?
I want to use windmove as the last resort, as does the OP:
- (t (org-shiftselect-error))))
+ (t (if org-shiftright-hook
+ ((run-hook-with-args-until-success 'org-shiftright-hook))
+ (org-shiftselect-error))))
;; end of org-shiftright ($otpional arg)
Otherwise we would loose the org-mode specific functions.
We want to
1. try to do somehing org-specific (if org-headline-p ....)
2. else run the hook (i.e. windmove in this case)
3. error only if 1. and 2. failed
We do use windmove but at the same time we do _not_ want to loose all
those shift-right... features to come ;)
Sebastian
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-23 23:19 ` Sebastian Rose
@ 2010-04-24 0:11 ` Carsten Dominik
2010-04-24 9:05 ` Sebastian Rose
2010-04-24 22:03 ` Daniel E. Doherty
0 siblings, 2 replies; 13+ messages in thread
From: Carsten Dominik @ 2010-04-24 0:11 UTC (permalink / raw)
To: Sebastian Rose; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org
On Apr 24, 2010, at 1:19 AM, Sebastian Rose wrote:
> Carsten Dominik <carsten.dominik@gmail.com> writes:
>> On Apr 23, 2010, at 6:12 PM, Sebastian Rose wrote:
>>
>>> Daniel E. Doherty <ded-law@ddoherty.net> writes:
>>>> All,
>>>>
>>>> I make *very* frequent use of the shift-arrow keys to move from
>>>> window
>>>> to window inside emacs via windmove. It is probably the most
>>>> frequent
>>>> key combination I access.
>>>>
>>>> Anyway, is there a way to make org-mode friendlier to it by
>>>> passing the
>>>> key along whenever org-mode would otherwise throw an error. For
>>>> example, when not on a heading, when in the agenda, and wherever
>>>> else?
>>>>
>>>> I really like Carsten's use of the arrow keys for structure
>>>> editing and
>>>> don't want to lose that, just whenever org-mode can't make use of
>>>> the
>>>> keys.
>>>>
>>>> Regards,
>>>
>>>
>>>
>>> And here all the arrow keys.
>>>
>>> It's somewhat inelegant, since you always need to keep track of new
>>> useful org-bindings.
>>>
>>> I would find an org-internal solution helpfull too. I use windmove.
>>
>> I have now added
>>
>> (defvar org-shiftup-hook nil
>> "Hook for functions attaching themselves to `S-up'.
>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>> (defvar org-shiftdown-hook nil
>> "Hook for functions attaching themselves to `S-down'.
>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>> (defvar org-shiftleft-hook nil
>> "Hook for functions attaching themselves to `S-left'.
>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>> (defvar org-shiftright-hook nil
>> "Hook for functions attaching themselves to `S-right'.
>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>
>> But I do not intend to attach specific functionality like windmove
>> to them,
>> and I'd like to reserve the possibility to make S-cursor do something
>> in Org in more contexts.
>>
>> Hope this still helps.
>
> This could be perfect!!!
>
> But wouldn't the hook need to be called at the end of (e.g.)
> `org-shiftright'?
>
> I want to use windmove as the last resort, as does the OP:
>
>
> - (t (org-shiftselect-error))))
> + (t (if org-shiftright-hook
> + ((run-hook-with-args-until-success 'org-shiftright-hook))
> + (org-shiftselect-error))))
>
> ;; end of org-shiftright ($otpional arg)
>
>
>
> Otherwise we would loose the org-mode specific functions.
>
> We want to
>
> 1. try to do somehing org-specific (if org-headline-p ....)
> 2. else run the hook (i.e. windmove in this case)
> 3. error only if 1. and 2. failed
>
>
> We do use windmove but at the same time we do _not_ want to loose all
> those shift-right... features to come ;)
Well, the idea is hat these hooks *can* overrule what org-mode wants
to do,
so whatever you put into the hook needs to decide if it wants to apply.
We could add *another* hook at the end...
- Carsten
>
>
>
> Sebastian
- Carsten
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-24 0:11 ` Carsten Dominik
@ 2010-04-24 9:05 ` Sebastian Rose
2010-04-25 7:08 ` Carsten Dominik
2010-04-24 22:03 ` Daniel E. Doherty
1 sibling, 1 reply; 13+ messages in thread
From: Sebastian Rose @ 2010-04-24 9:05 UTC (permalink / raw)
To: Carsten Dominik; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org
Carsten Dominik <carsten.dominik@gmail.com> writes:
> On Apr 24, 2010, at 1:19 AM, Sebastian Rose wrote:
>
>> Carsten Dominik <carsten.dominik@gmail.com> writes:
>>> On Apr 23, 2010, at 6:12 PM, Sebastian Rose wrote:
>>>
>>>> Daniel E. Doherty <ded-law@ddoherty.net> writes:
>>>>> All,
>>>>>
>>>>> I make *very* frequent use of the shift-arrow keys to move from window
>>>>> to window inside emacs via windmove. It is probably the most frequent
>>>>> key combination I access.
>>>>>
>>>>> Anyway, is there a way to make org-mode friendlier to it by passing the
>>>>> key along whenever org-mode would otherwise throw an error. For
>>>>> example, when not on a heading, when in the agenda, and wherever else?
>>>>>
>>>>> I really like Carsten's use of the arrow keys for structure editing and
>>>>> don't want to lose that, just whenever org-mode can't make use of the
>>>>> keys.
>>>>>
>>>>> Regards,
>>>>
>>>>
>>>>
>>>> And here all the arrow keys.
>>>>
>>>> It's somewhat inelegant, since you always need to keep track of new
>>>> useful org-bindings.
>>>>
>>>> I would find an org-internal solution helpfull too. I use windmove.
>>>
>>> I have now added
>>>
>>> (defvar org-shiftup-hook nil
>>> "Hook for functions attaching themselves to `S-up'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>> (defvar org-shiftdown-hook nil
>>> "Hook for functions attaching themselves to `S-down'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>> (defvar org-shiftleft-hook nil
>>> "Hook for functions attaching themselves to `S-left'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>> (defvar org-shiftright-hook nil
>>> "Hook for functions attaching themselves to `S-right'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>>
>>> But I do not intend to attach specific functionality like windmove to them,
>>> and I'd like to reserve the possibility to make S-cursor do something
>>> in Org in more contexts.
>>>
>>> Hope this still helps.
>>
>> This could be perfect!!!
>>
>> But wouldn't the hook need to be called at the end of (e.g.)
>> `org-shiftright'?
>>
>> I want to use windmove as the last resort, as does the OP:
>>
>>
>> - (t (org-shiftselect-error))))
>> + (t (if org-shiftright-hook
>> + ((run-hook-with-args-until-success 'org-shiftright-hook))
>> + (org-shiftselect-error))))
>>
>> ;; end of org-shiftright ($otpional arg)
>>
>>
>>
>> Otherwise we would loose the org-mode specific functions.
>>
>> We want to
>>
>> 1. try to do somehing org-specific (if org-headline-p ....)
>> 2. else run the hook (i.e. windmove in this case)
>> 3. error only if 1. and 2. failed
>>
>>
>> We do use windmove but at the same time we do _not_ want to loose all
>> those shift-right... features to come ;)
>
> Well, the idea is hat these hooks *can* overrule what org-mode wants to do,
> so whatever you put into the hook needs to decide if it wants to apply.
>
> We could add *another* hook at the end...
OK - I would love to use that one then. I could stick with my functions
otherwise.
Overruling is easily done, but to use windmove as a last resort could
not even be done using `ad-add-advice' because of the
(t (org-shiftselect-error))
Sebastian
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-24 9:05 ` Sebastian Rose
@ 2010-04-25 7:08 ` Carsten Dominik
2010-04-25 9:34 ` Sebastian Rose
0 siblings, 1 reply; 13+ messages in thread
From: Carsten Dominik @ 2010-04-25 7:08 UTC (permalink / raw)
To: Sebastian Rose; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org
On Apr 24, 2010, at 11:05 AM, Sebastian Rose wrote:
> Carsten Dominik <carsten.dominik@gmail.com> writes:
>> On Apr 24, 2010, at 1:19 AM, Sebastian Rose wrote:
>>
>>> Carsten Dominik <carsten.dominik@gmail.com> writes:
>>>> On Apr 23, 2010, at 6:12 PM, Sebastian Rose wrote:
>>>>
>>>>> Daniel E. Doherty <ded-law@ddoherty.net> writes:
>>>>>> All,
>>>>>>
>>>>>> I make *very* frequent use of the shift-arrow keys to move from
>>>>>> window
>>>>>> to window inside emacs via windmove. It is probably the most
>>>>>> frequent
>>>>>> key combination I access.
>>>>>>
>>>>>> Anyway, is there a way to make org-mode friendlier to it by
>>>>>> passing the
>>>>>> key along whenever org-mode would otherwise throw an error. For
>>>>>> example, when not on a heading, when in the agenda, and
>>>>>> wherever else?
>>>>>>
>>>>>> I really like Carsten's use of the arrow keys for structure
>>>>>> editing and
>>>>>> don't want to lose that, just whenever org-mode can't make use
>>>>>> of the
>>>>>> keys.
>>>>>>
>>>>>> Regards,
>>>>>
>>>>>
>>>>>
>>>>> And here all the arrow keys.
>>>>>
>>>>> It's somewhat inelegant, since you always need to keep track of
>>>>> new
>>>>> useful org-bindings.
>>>>>
>>>>> I would find an org-internal solution helpfull too. I use
>>>>> windmove.
>>>>
>>>> I have now added
>>>>
>>>> (defvar org-shiftup-hook nil
>>>> "Hook for functions attaching themselves to `S-up'.
>>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>>> (defvar org-shiftdown-hook nil
>>>> "Hook for functions attaching themselves to `S-down'.
>>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>>> (defvar org-shiftleft-hook nil
>>>> "Hook for functions attaching themselves to `S-left'.
>>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>>> (defvar org-shiftright-hook nil
>>>> "Hook for functions attaching themselves to `S-right'.
>>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>>>
>>>> But I do not intend to attach specific functionality like
>>>> windmove to them,
>>>> and I'd like to reserve the possibility to make S-cursor do
>>>> something
>>>> in Org in more contexts.
>>>>
>>>> Hope this still helps.
>>>
>>> This could be perfect!!!
>>>
>>> But wouldn't the hook need to be called at the end of (e.g.)
>>> `org-shiftright'?
>>>
>>> I want to use windmove as the last resort, as does the OP:
>>>
>>>
>>> - (t (org-shiftselect-error))))
>>> + (t (if org-shiftright-hook
>>> + ((run-hook-with-args-until-success 'org-shiftright-hook))
>>> + (org-shiftselect-error))))
>>>
>>> ;; end of org-shiftright ($otpional arg)
OK, I have now 4 more hooks
org-shiftup-final-hook
org-shiftdown-final-hook
org-shiftleft-final-hook
org-shiftright-final-hook
They will run *before* Org is trying to support shift-select. I do not
think i makes sense to run the after....
- Carsten
>>>
>>>
>>>
>>> Otherwise we would loose the org-mode specific functions.
>>>
>>> We want to
>>>
>>> 1. try to do somehing org-specific (if org-headline-p ....)
>>> 2. else run the hook (i.e. windmove in this case)
>>> 3. error only if 1. and 2. failed
>>>
>>>
>>> We do use windmove but at the same time we do _not_ want to loose
>>> all
>>> those shift-right... features to come ;)
>>
>> Well, the idea is hat these hooks *can* overrule what org-mode
>> wants to do,
>> so whatever you put into the hook needs to decide if it wants to
>> apply.
>>
>> We could add *another* hook at the end...
>
>
> OK - I would love to use that one then. I could stick with my
> functions
> otherwise.
>
> Overruling is easily done, but to use windmove as a last resort could
> not even be done using `ad-add-advice' because of the
>
> (t (org-shiftselect-error))
>
>
>
> Sebastian
- Carsten
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-25 7:08 ` Carsten Dominik
@ 2010-04-25 9:34 ` Sebastian Rose
2010-04-25 20:41 ` Daniel E. Doherty
0 siblings, 1 reply; 13+ messages in thread
From: Sebastian Rose @ 2010-04-25 9:34 UTC (permalink / raw)
To: Carsten Dominik; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org
Carsten Dominik <carsten.dominik@gmail.com> writes:
> OK, I have now 4 more hooks
>
> org-shiftup-final-hook
> org-shiftdown-final-hook
> org-shiftleft-final-hook
> org-shiftright-final-hook
>
>
> They will run *before* Org is trying to support shift-select. I do not
> think i makes sense to run the after....
Perfect. Thanks!
Sebastian
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-25 9:34 ` Sebastian Rose
@ 2010-04-25 20:41 ` Daniel E. Doherty
2010-04-26 8:56 ` Sebastian Rose
0 siblings, 1 reply; 13+ messages in thread
From: Daniel E. Doherty @ 2010-04-25 20:41 UTC (permalink / raw)
To: Sebastian Rose; +Cc: Daniel E. Doherty, emacs-orgmode@gnu org, Carsten Dominik
Carsten,
Many thanks. You 'da man!
Sebastian,
Not being adept at elisp, would you mind posting code to take advantage
of these new hooks for windmove?
Regards,
Dan
Sebastian Rose wrote:
> Carsten Dominik <carsten.dominik@gmail.com> writes:
>
>> OK, I have now 4 more hooks
>>
>> org-shiftup-final-hook
>> org-shiftdown-final-hook
>> org-shiftleft-final-hook
>> org-shiftright-final-hook
>>
>>
>> They will run *before* Org is trying to support shift-select. I do not
>> think i makes sense to run the after....
>>
>
>
> Perfect. Thanks!
>
> Sebastian
>
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-25 20:41 ` Daniel E. Doherty
@ 2010-04-26 8:56 ` Sebastian Rose
2010-04-26 9:07 ` Carsten Dominik
0 siblings, 1 reply; 13+ messages in thread
From: Sebastian Rose @ 2010-04-26 8:56 UTC (permalink / raw)
To: Daniel E. Doherty
Cc: Daniel E. Doherty, emacs-orgmode@gnu org, Carsten Dominik
[-- Attachment #1: Type: text/plain, Size: 249 bytes --]
"Daniel E. Doherty" <ddoherty03@gmail.com> writes:
> Carsten,
>
> Many thanks. You 'da man!
>
> Sebastian,
>
> Not being adept at elisp, would you mind posting code to take advantage of these
> new hooks for windmove?
Daniel,
this here will do:
[-- Attachment #2: Type: application/emacs-lisp, Size: 246 bytes --]
[-- Attachment #3: Type: text/plain, Size: 478 bytes --]
Best wishes
Sebastian
>
> Regards,
>
> Dan
>
> Sebastian Rose wrote:
>> Carsten Dominik <carsten.dominik@gmail.com> writes:
>>
>>> OK, I have now 4 more hooks
>>>
>>> org-shiftup-final-hook
>>> org-shiftdown-final-hook
>>> org-shiftleft-final-hook
>>> org-shiftright-final-hook
>>>
>>>
>>> They will run *before* Org is trying to support shift-select. I do not
>>> think i makes sense to run the after....
>>>
>>
>>
>> Perfect. Thanks!
>>
>> Sebastian
>>
>
[-- Attachment #4: Type: text/plain, Size: 201 bytes --]
_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-26 8:56 ` Sebastian Rose
@ 2010-04-26 9:07 ` Carsten Dominik
0 siblings, 0 replies; 13+ messages in thread
From: Carsten Dominik @ 2010-04-26 9:07 UTC (permalink / raw)
To: Sebastian Rose
Cc: Daniel E. Doherty, emacs-orgmode@gnu org, Daniel E. Doherty
On Apr 26, 2010, at 10:56 AM, Sebastian Rose wrote:
> "Daniel E. Doherty" <ddoherty03@gmail.com> writes:
>> Carsten,
>>
>> Many thanks. You 'da man!
>>
>> Sebastian,
>>
>> Not being adept at elisp, would you mind posting code to take
>> advantage of these
>> new hooks for windmove?
>
> Daniel,
>
> this here will do:
Thanks for this, I have added this to the manual.
- Carsten
>
> <mime-attachment>
>
> Best wishes
>
> Sebastian
>
>
>>
>> Regards,
>>
>> Dan
>>
>> Sebastian Rose wrote:
>>> Carsten Dominik <carsten.dominik@gmail.com> writes:
>>>
>>>> OK, I have now 4 more hooks
>>>>
>>>> org-shiftup-final-hook
>>>> org-shiftdown-final-hook
>>>> org-shiftleft-final-hook
>>>> org-shiftright-final-hook
>>>>
>>>>
>>>> They will run *before* Org is trying to support shift-select. I
>>>> do not
>>>> think i makes sense to run the after....
>>>>
>>>
>>>
>>> Perfect. Thanks!
>>>
>>> Sebastian
>>>
>>
- Carsten
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Shift-Arrow Pass Through for windmove?
2010-04-24 0:11 ` Carsten Dominik
2010-04-24 9:05 ` Sebastian Rose
@ 2010-04-24 22:03 ` Daniel E. Doherty
1 sibling, 0 replies; 13+ messages in thread
From: Daniel E. Doherty @ 2010-04-24 22:03 UTC (permalink / raw)
To: Carsten Dominik; +Cc: emacs-orgmode@gnu org, Daniel E. Doherty
Carsten,
I'll second Sebastian on this one. I don't want to let windmove, or
whatever, override anything if it would be useful in org-mode, so a hook
at the end sounds like the right thing.
Don't org-mode users strike you as really greedy? I'm afraid you've
spoiled us.
Regards,
Dan
Carsten Dominik wrote:
>
> On Apr 24, 2010, at 1:19 AM, Sebastian Rose wrote:
>
>> Carsten Dominik <carsten.dominik@gmail.com> writes:
>>> On Apr 23, 2010, at 6:12 PM, Sebastian Rose wrote:
>>>
>>>> Daniel E. Doherty <ded-law@ddoherty.net> writes:
>>>>> All,
>>>>>
>>>>> I make *very* frequent use of the shift-arrow keys to move from
>>>>> window
>>>>> to window inside emacs via windmove. It is probably the most
>>>>> frequent
>>>>> key combination I access.
>>>>>
>>>>> Anyway, is there a way to make org-mode friendlier to it by
>>>>> passing the
>>>>> key along whenever org-mode would otherwise throw an error. For
>>>>> example, when not on a heading, when in the agenda, and wherever
>>>>> else?
>>>>>
>>>>> I really like Carsten's use of the arrow keys for structure
>>>>> editing and
>>>>> don't want to lose that, just whenever org-mode can't make use of the
>>>>> keys.
>>>>>
>>>>> Regards,
>>>>
>>>>
>>>>
>>>> And here all the arrow keys.
>>>>
>>>> It's somewhat inelegant, since you always need to keep track of new
>>>> useful org-bindings.
>>>>
>>>> I would find an org-internal solution helpfull too. I use windmove.
>>>
>>> I have now added
>>>
>>> (defvar org-shiftup-hook nil
>>> "Hook for functions attaching themselves to `S-up'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>> (defvar org-shiftdown-hook nil
>>> "Hook for functions attaching themselves to `S-down'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>> (defvar org-shiftleft-hook nil
>>> "Hook for functions attaching themselves to `S-left'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>> (defvar org-shiftright-hook nil
>>> "Hook for functions attaching themselves to `S-right'.
>>> See `org-ctrl-c-ctrl-c-hook' for more information.")
>>>
>>> But I do not intend to attach specific functionality like windmove
>>> to them,
>>> and I'd like to reserve the possibility to make S-cursor do something
>>> in Org in more contexts.
>>>
>>> Hope this still helps.
>>
>> This could be perfect!!!
>>
>> But wouldn't the hook need to be called at the end of (e.g.)
>> `org-shiftright'?
>>
>> I want to use windmove as the last resort, as does the OP:
>>
>>
>> - (t (org-shiftselect-error))))
>> + (t (if org-shiftright-hook
>> + ((run-hook-with-args-until-success 'org-shiftright-hook))
>> + (org-shiftselect-error))))
>>
>> ;; end of org-shiftright ($otpional arg)
>>
>>
>>
>> Otherwise we would loose the org-mode specific functions.
>>
>> We want to
>>
>> 1. try to do somehing org-specific (if org-headline-p ....)
>> 2. else run the hook (i.e. windmove in this case)
>> 3. error only if 1. and 2. failed
>>
>>
>> We do use windmove but at the same time we do _not_ want to loose all
>> those shift-right... features to come ;)
>
> Well, the idea is hat these hooks *can* overrule what org-mode wants
> to do,
> so whatever you put into the hook needs to decide if it wants to apply.
>
> We could add *another* hook at the end...
>
> - Carsten
>
>
>>
>>
>>
>> Sebastian
>
> - Carsten
>
>
>
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2010-04-26 9:08 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-22 20:30 Shift-Arrow Pass Through for windmove? Daniel E. Doherty
2010-04-23 16:01 ` Sebastian Rose
2010-04-23 16:12 ` Sebastian Rose
2010-04-23 18:54 ` Carsten Dominik
2010-04-23 23:19 ` Sebastian Rose
2010-04-24 0:11 ` Carsten Dominik
2010-04-24 9:05 ` Sebastian Rose
2010-04-25 7:08 ` Carsten Dominik
2010-04-25 9:34 ` Sebastian Rose
2010-04-25 20:41 ` Daniel E. Doherty
2010-04-26 8:56 ` Sebastian Rose
2010-04-26 9:07 ` Carsten Dominik
2010-04-24 22:03 ` Daniel E. Doherty
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.