[...] Is there a keybinding or some other default I can set to make PageUp/Down actually move one page up/down based solely on the visible lines, not the location of the caret? (Move PageUp/ Down would then, either re-center the caret on the new page or place it at the same relative location.)
The default behavior is to move exactly one page up/down without moving the caret (look at the scrollbar for the exact distance moved).
You can change it e.g. to move the caret as well [1]. Could it be, that you already changed this, but moved the movePageUp:/ movePageDown: selectors? If so, you get a third behavior, where caret will first move to the screen boundaries, and then move a page.
[1] http://macromates.com/blog/archives/2005/07/05/key-bindings-for- switchers/
I just verified my key bindings and they're at the defaults (e.g., PageUp binds to pageUp:). I tried binding to movePageUp: just to verify. What I'm seeing is different than what you've described. Perhaps I've altered some other binding, but heck if I can find it.
As long as the caret is on the center line, I get the behavior you describe. If the caret is not on the center line then I get other behavior. For example, if display is showing lines 283-364 (so, 82 lines per page), if the caret is on line 323 (the center) and I page up, the windows displays lines 201-282 (that is, it's move backward by 82 lines. However, if the caret is on line 360 (below center) and I page up, the window displays (roughly) lines 237-319 and the caret is on line 278. It's moving backward one page as measured from the caret location (360 - 82 = 278) and then making that line the center. The visual effect is a movement of more/less than a whole page depending on how far from center you are.
It seems that Xcode and TextMate do the same, while BBEdit moves a strict page up/down (perhaps leaving the caret outside of the visible window). If I could request something, what I would prefer is to always move exactly one page up/down based on the window size alone, regardless of where the caret is. If that leaves the caret outside the window, well, Ok. It'd be cool if the caret would land on the same relative position on the newly displayed page (e.g., if displaying 100-200 with caret on 175, a page down would display 200-300 with caret on 275).
Is this making sense? Are there defaults or bindings I can change to obtain this effect?
Brendan Dixon brendandixon@mac.com 425.922.8798
This got sent w/o a subject...oops.
Brendan Dixon brendandixon@mac.com 425.922.8798
Begin forwarded message:
From: Brendan Dixon brendandixon@mac.com Date: February 22, 2007 8:52:37 AM PST To: TextMate users textmate@lists.macromates.com Subject: [TxMt] (no subject) Reply-To: TextMate users textmate@lists.macromates.com
[...] Is there a keybinding or some other default I can set to make PageUp/Down actually move one page up/down based solely on the visible lines, not the location of the caret? (Move PageUp/ Down would then, either re-center the caret on the new page or place it at the same relative location.)
The default behavior is to move exactly one page up/down without moving the caret (look at the scrollbar for the exact distance moved).
You can change it e.g. to move the caret as well [1]. Could it be, that you already changed this, but moved the movePageUp:/ movePageDown: selectors? If so, you get a third behavior, where caret will first move to the screen boundaries, and then move a page.
[1] http://macromates.com/blog/archives/2005/07/05/key-bindings- for-switchers/
I just verified my key bindings and they're at the defaults (e.g., PageUp binds to pageUp:). I tried binding to movePageUp: just to verify. What I'm seeing is different than what you've described. Perhaps I've altered some other binding, but heck if I can find it.
As long as the caret is on the center line, I get the behavior you describe. If the caret is not on the center line then I get other behavior. For example, if display is showing lines 283-364 (so, 82 lines per page), if the caret is on line 323 (the center) and I page up, the windows displays lines 201-282 (that is, it's move backward by 82 lines. However, if the caret is on line 360 (below center) and I page up, the window displays (roughly) lines 237-319 and the caret is on line 278. It's moving backward one page as measured from the caret location (360 - 82 = 278) and then making that line the center. The visual effect is a movement of more/less than a whole page depending on how far from center you are.
It seems that Xcode and TextMate do the same, while BBEdit moves a strict page up/down (perhaps leaving the caret outside of the visible window). If I could request something, what I would prefer is to always move exactly one page up/down based on the window size alone, regardless of where the caret is. If that leaves the caret outside the window, well, Ok. It'd be cool if the caret would land on the same relative position on the newly displayed page (e.g., if displaying 100-200 with caret on 175, a page down would display 200-300 with caret on 275).
Is this making sense? Are there defaults or bindings I can change to obtain this effect?
Brendan Dixon brendandixon@mac.com 425.922.8798
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate
On 22. Feb 2007, at 17:52, Brendan Dixon wrote:
[1] http://macromates.com/blog/archives/2005/07/05/key-bindings- for-switchers/
I just verified my key bindings and they're at the defaults (e.g., PageUp binds to pageUp:). I tried binding to movePageUp: just to verify. What I'm seeing is different than what you've described. Perhaps I've altered some other binding, but heck if I can find it.
The default is scrollPageUp: and scrollPageDown: -- I think those comes closer to what you request.
Yes, that's better. (I must have changed bindings before I grasped the differences.)
Is there a form, or a default, that will cause the caret to stay within the visible window without the "move all around the center" effect of pageUp/Down:? Emacs does this, for example, with its default pageUp/Down code.
Thank you,
Brendan Dixon brendandixon@mac.com 425.922.8798
On Feb 22, 2007, at 2:19 PM, Allan Odgaard wrote:
On 22. Feb 2007, at 17:52, Brendan Dixon wrote:
[1] http://macromates.com/blog/archives/2005/07/05/key-bindings- for-switchers/
I just verified my key bindings and they're at the defaults (e.g., PageUp binds to pageUp:). I tried binding to movePageUp: just to verify. What I'm seeing is different than what you've described. Perhaps I've altered some other binding, but heck if I can find it.
The default is scrollPageUp: and scrollPageDown: -- I think those comes closer to what you request.
For new threads USE THIS: textmate@lists.macromates.com (threading gets destroyed and the universe will collapse if you don't) http://lists.macromates.com/mailman/listinfo/textmate