I've been using TextMate for years and I'm productive and happy with it. However, I like to try other editors from time to time to see if I'm missing anything. Recently I spent some time learning Vim and I discovered a few things that I particularly liked.
1) Split windows -- not the kind of split windows you normally get in Mac applications, but the Vim style ones. In Vim you can easily navigate from the keyboard to your different splits and choose what files to display in each. Additionally, you don't have to reach for your mouse to create a split. When you split, Vim divides the space up for you which is what you want most of the time. I found that it is very handy when needing to view more than 1 file at a time, which in my case is most of the time. Closing splits is about as easy as they are to create -- all from the keyboard. Multiple windows isn't really the same thing because they are slow to setup and tear down.
2) Selective multifile grep -- in Vim you can use a regular expression to open a set of files, and then just grep across the open files.
3) Don't need arrow keys -- after years of editing with the mouse; I find it painful to reach for it. It hurts my right shoulder and shoulder blade. It even hurts to have to move my hand down to the arrow keys. However, in Vim it is easy to keep your hands resting on your keyboard with your shoulders relaxed. No reaching for the mouse or arrow keys.
Hi LaTeX users,
I'm working some more on the Typeset and View command, we are going to replace the default command that currently ships with TextMate. But I need some information. What process are TextMate's LaTeX users following for building their documents? I'm sure most of you are using bibtex, but what about other things like makeindex? Has everyone moved to a pure pdf-based process, or are some of you still using dvi/postscript? What are you using for pictures? Anything you can tell me will help.
I would also *love* example documents along with the expected output. This will aid in testing, and ensure that your particular process will be supported!
I had the same problem as described in a post from Sebastian on
Here is my error output:
Running bibtex on Exjobb (ny).tex
Traceback (most recent call last): File "/Users/peeter/Peeterprogram/
texMate.py", line 457, in texStatus, isFatal, numErrs, numWarns =
run_bibtex(texfile=fileName) File "/Users/peeter/Peeterprogram/
texMate.py", line 71, in run_bibtex return stat,fatal,err,warn
UnboundLocalError: local variable 'stat' referenced before assignment
It seems that it had to do with the parentheses in my filename messing
up the regexes.
My solution was to change lines 71 and 72 in Textmate.app/Contents/
SharedSupport/Bundles/Latex.tmbundle/Support/bin/texMate.py as follows:
# auxfiles = [f for f in os.listdir('.') if re.search('.aux
$',f) > 0]
# auxfiles = [f for f in auxfiles if re.match(r'('+ basename +
auxfiles = [f for f in os.listdir('.') if re.search('.aux$',f)
> 0 and (f.startswith(basename) or re.match(r'bu\d+\.aux', f))]
This works, at least for me.
Or have I messed something else up in the process?
Reading this: http://blog.macromates.com/2009/interactive-input/
Did the steps:
> cd /Applications/TextMate.app/Contents/SharedSupport/Support/lib/
> svn export http://svn.textmate.org/trunk/Support/lib/tm_interactive_input.dylib@11735
When I press ⌘R on a simple python script using:
variable = raw_input()
... it still fails like this:
EOF Error: 'EOF when reading a line'
Making a simple Ruby program, I got similar error:
TypeError: can't convert nil into String
The comments to the blog post seems to stray somewhat from the topic,
so I couldn't figure out if there was something I was supposed to do
TM is really on of the best text editors, however, there is two
issues unresolved for (the) years (of SL) now.
Issue one is TextMate's spelling behaviour, i.e., the automatic
detection of the language of a written paragraph, see here:
TM does not detect the language I am typing in, perhaps because it
uses a non-Apple document window. Anyway, always changing the
system language to get correct spell check on the fly (as
suggested in the thread) could hardly be a working solution. In
addition, quite often I write source documents in various
languages, e.g. English and German, and that makes a "one language
per document" unusable.
There has also been an issue with an advanced print dialogue (but
I cannot remember the posting). It is quite nice that TM adds
headers and footers, however, TM does not print coloured syntax,
and leaving a margin of about 1cm makes the printout unusable for
punching and filing. In addition, 11pt Monaco is quite good on my
screen but printing in that font size is rather a waste of space
on the page. Of course, I know, that one may produce a html
(nicely coloured, indeed), open that one in, say, Firefox, and
print the html page.
Anyway, I was wondering if there is any progress on these two
points, first, to get the apple multilingual spell check working,
second, to provide TM with a print preference to set things like
font, colours, and margins.
Sascha Vieweg, saschaview(a)gmail.com
I am a big fan of textmate and been using it for last 6 years, and SQL
bundle was one of the main tools in my toolbox. However, after upgrading
To Lion I can¹t execute any queries and every time I try I get ³Bad
Handshake² error even though I can connect to mysql just can¹t browse data.
Any pointers on that would be greatly appreciated.
This are my settings:
Lion 10.7.2 with xcode 4.1
Version: 1.5.10 (1631)
I¹ve removed everything from Preferences -> Advanced -> Shell Variables
Running controll+R for this command: puts RUBY_DESCRIPTION returns
ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
It was installed via brew
version: Ver 14.14 Distrib 5.5.15, for osx10.7 (i386) using readline 5.1
character-set-server = utf8
default-character-set = utf8
#This option makes InnoDB to store each created table into its own .ibd
default-character-set = utf8
TM2 still appears to have the same troublesome selection behavior TM1 has. As an example take this line in Perl:
die("$self failed to implement ".(caller(0)));
Ideally I could select '$self' by double-clicking. For that to work I would need to tell TM2 that $ is a word character in Perl, per grammar word character definitions are needed. (That may be there already, but I can't find it being mentioned anywhere.)
Now double-clicking on 'self' and moving the mouse to the left to add the '$' doesn't work because it adds '("$'. TM2 should treat non-word characters as individual characters instead of grouping them together into a "word" when extending a selection that started with a double-click.
Similarly it is impossible to select 'caller(0)' by double-clicking 'caller' and extending to the right, instead one ends up with 'caller(0))['.