[TxMt] Re: silly question about the zoom button
Jay Soffian
jay-txmt at soffian.org
Fri Nov 17 06:12:58 UTC 2006
On Nov 16, 2006, at 11:46 PM, Don Kalar wrote:
> In my ideal world, Textmate would expand horizontally only as wide as
> the longest line of text when you clicked the zoom button.
You could do something like this as bundle command:
#!/bin/sh
chars=`perl -ne '$m = length if length > $m; END{print $m}'`
cat <<__EOF__ | osascript
set fontscale to 6.25
set gutter to 54
set scrollbar to 16
set maxwidth to 1920
tell application "TextMate"
set d to bounds of window 1
set l to item 1 of d
set t to item 2 of d
set r to l + (fontscale * $chars) + gutter + scrollbar
if r > maxwidth then set r to maxwidth
set b to item 4 of d
set bounds of window 1 to {l, t, r, b}
end tell
__EOF__
Input: Document / Output: Discard.
It's not perfect but gets pretty close in the testing I just did.
You'll have to figure out your own fontscale. To get close download
FreeRuler [1]. Set your wrap column to 100 and make your right margin
indicator visible in the TextMate prefs then just measure with
FreeRuler and divide the pixel count by 100. Obviously adjust gutter
and maxwidth as appropriate.
> Though I can see how vertical only may also be useful, especially
> when writing text (e.g. LaTeX) instead of code.
Well I primarily use TextMate for Python and prefer lines no wider
than 78 chars. In fact, people who code lines wider than that should
be shot -- at least until TextMate's wrapping is improved. :-)
That reminds me of another nit ... when scrolling horizontally I'd
much prefer if the gutter did not scroll out of the window frame.
j.
[1] http://www.pascal.com/software/freeruler/
More information about the textmate
mailing list