Constantinos,
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.
Thanks again....
On 6/2/07, Constantinos Neophytou ♎ <jaguarcy(a)gmail.com> wrote:
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:
sometext⇥more text
somemoretext⇥and a bit more
whateverelse⇥some 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):
Command
Input: Selected Text or Nothing
Output: Replace Selected Text
Activation: Key Equivalent (i set it to cmd-opt-shift-r)
Command:
#!/usr/bin/env python
import os
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[0]))
l = "%%-%ds" % length
for j in range(len(lines)):
sec = lines[j].split(splitMarker)
sec[0] = l % sec[0]
print joinMarker.join(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
like...
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: textmate(a)lists.macromates.com
(threading gets destroyed and the universe will collapse if you don't)
http://lists.macromates.com/mailman/listinfo/textmate
--
What's your Dream?
Make it happen with
www.dostpost.com
______________________________________________________________________
For new threads USE THIS: textmate(a)lists.macromates.com
(threading gets destroyed and the universe will collapse if you don't)
http://lists.macromates.com/mailman/listinfo/textmate