Thanks for the script, at first test it doesnt work but I'll dig into it to figure out a way to make it work.
I think this could probably be accomplished with a simple python (or
ruby) script that took the line as input, then did
print "%-100s" % thetext
or something like that and replaced the line? (or place it in a macro
that first selects the line, and the command replaces the selection...)
As for the original question, woulnd't it be failry straight forward
to have something like:
somemoretext⇥and a bit more
then opt-shift-up, and parse the selection through a small python
script that splits each line on the tab character, finds the longest
first half of a line, and aligns everything using spaces...
in fact, this seems to work as a command (takes the first tab it
finds in every line, and adds enough spaces before it so that all the
first tabs in each line align):
Input: Selected Text or Nothing
Output: Replace Selected Text
Activation: Key Equivalent (i set it to cmd-opt-shift-r)
selectedText = ''
splitMarker = "\t"
joinMarker = "\t"
if 'TM_SELECTED_TEXT' in os.environ:
selectedText = os.environ['TM_SELECTED_TEXT']
lines = selectedText.splitlines()
length = 0
for i in range(len(lines)):
sec = lines[i].split(splitMarker)
length = max(length, len(sec))
l = "%%-%ds" % length
for j in range(len(lines)):
sec = lines[j].split(splitMarker)
sec = l % sec
This is very rough, i wrote it while writing this email, but it seems
to work. Using it in the above proposed method also seems to work
(i.e. write all the data in a column block, have the first tab where
you want everything to align, opt-shift-up, opt-cmd-shift-R)
Note instead of the first tab, the align 'marker' can be anything...
On Jun 2, 2007, at 12:38 PM, Piero D''Ancona wrote:
> Allan Odgaard <throw-away-1@...> writes:
>> On 2. Jun 2007, at 06:54, Helmut Granda wrote:
>>> for example is it possible to write a snippet to do something
>>> text (move to column 100)moreText
>>> does that makes sense? sort of tabbing but using column numbers
>>> instead (margins?)
>> Other than actually inserting the required number of spaces, no,
>> there is no such shortcut.
> If the text to be inserted is always the same, you can record
> a macro which inserts some text, moves to the right (press
> right arrow 100 times) then inserts some more text...
> For new threads USE THIS: firstname.lastname@example.org
> (threading gets destroyed and the universe will collapse if you don't)
What's your Dream?
Make it happen with www.dostpost.com
For new threads USE THIS: email@example.com
(threading gets destroyed and the universe will collapse if you don't)