質問

I've set up activate-mark-hook and deactivate-mark-hook, but they work only when selecting text by dragging mouse, not by using shift-selection. How do I hook into shift selection?

I'm using Aquamacs 24 on Mac OS X 10.6.6.

役に立ちましたか?

解決

Just peeked into the Emacs source to see what happens, this is what I found:

For every command that has been shift-translated, the function "handle-shift-selection" is called. This function will activate or deactivate the selection by using the "transient-mark-mode" variable, and by calling "push-mark" and "deactivate-mark", respectively. If I do the math correctly, this means that your deactivate hook will be called, but not you activation hook.

One way to solve this is to add your own code to "push-mark" using "defadvice".

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top