It works, but in fact I really don't know what I'm doing. What's the regexp "^(...*?):([0-9]*):?([0-9]*)" for ? And now that my file ie "myfile.tex" has been compiled to "myfile.pdf", how to call my reader on it ? $File returns the file name, I need it without its extension + "pdf" ($File[:-3]+"pdf" in Python). It must exist other variables like $File, but what are their names ?

I know it's pain to write documentation, but Sublime really needs better docs (the wiki has become unreadable). We can all help jps on this point, I think it's no problem.

# Spaces in path workaround: # add an extra quote (!) before the quoted command name: # result = os.system('""pythonbugtest.exe" "test"') # Explanation: # there was a time when the cmd prompt treated all spaces as delimiters, so # >cd My Documents # would fail. Nowadays you can do that successfully and even # >cd My Documents\My Pictures # works. # In the old days, if a directory had a space, you had to enclose it in quotes # >cd "My Documents" # But you didn't actually need to include the trailing quote, so you could get away with # >cd "My Documents cmd = '""%(exe)s" "%(args)s""' % {'exe' : exe, 'args' : f } # stderr > out.txt 2>&1 result = os.system(cmd)

that what i have used once and it worked. regarding the other method, i must admit it seems cleaner, but i can join your feelings here, i also don't have a clue how it works (i stumbled on it once, but couldn't figure it out)

The regex matches file names in the output of the command, typically compiler errors messages. Submatch 1 should be the filename, 2 the line number, and 3 the column (the latter two being optional). The regex must be quoted, and any escapes within it double-escaped.

I'm not happy with the syntax of *.sublime-build files, it's on the todo list to make them more reasonable.