[SVN] hanging when doing subversion commit
Simon Strandgaard
neoneye at gmail.com
Thu Jun 16 09:30:35 UTC 2005
I had some todo's to the ruby syntax, and thus wanted to commit it.
But the windows just seems to be hanging..
This is what it outputs.. and then nothing happens.
Subversion Commit
/usr/local/bin/svn commit-m 'issues with heredoc, modulo and
keywords.. ' '/Library/Application
Support/TextMate/Bundles/Ruby.tmbundle/Syntaxes/Ruby.plist'
Authentication realm:
Earlier this morning I did a svn update..
I have no idea what the problem seems to be.
--
Simon Strandgaard
This is the text that I wanted to commit.
text:
M[1]?(a+b):p(c+d)
symptoms:
':p' is recognized as a symbol.. which its not.
solution:
Unknown. The problem is the ternary logic operator, the else-branch of
which looks like a symbol if there isn't a space between the ':' and
the following text.
text:
if (data.size % 2) == 1
line << ('%3s ' % str)
symptoms:
'% 2) ' is recognized as a literal which is wrong.
'% str)' is opening a literal which continues to the next line.
solution:
tweak the rules for literals and for the modulo operator.
text:
data += 0.chr
99.downto(0)
symptoms:
'0.' and '99.' is colored as if they were a float. In this case
they are integers on which a method is invoked.
solution:
tweak the rules for numbers and for instance methods.
text:
#{self.class} (in double quotes)
symptoms:
coloring of interpolated code within strings.. is inconsisten.
solution:
tweak the interpolation rules and stuff.
text:
br = m.end(0) + b1
x, y = b2vxay(m.begin(0) + b1)
stream.next
symptoms:
'end', 'begin', 'next' is colored as if they were keywords..
here they are methods.
solution:
adjust keyword and method rules.
text:
val?(a):p(b)
val?'a':'b'
symptoms:
':p' is recognized as a symbol.. its 2 things ':' and 'p'.
:'b' has same problem.
solution:
ternary operator rule, precedence stuff, symbol rule.
text:
a<<1
assert_equal(2**i, 1<<i)
symptoms:
'a<<1' pushes 1 on a, but is recognized as being a heredoc.
'1<<i' same problem.
solution:
let the heredoc rule look for bunch of stuff,
for instance assignment 'a=<<1', method calls 'p(<<1)'.
More information about the textmate-dev
mailing list