Hacker News new | past | comments | ask | show | jobs | submit login
TextMate 2.0 (rc 10) (github.com/textmate)
83 points by antfarm on June 19, 2018 | hide | past | favorite | 62 comments



Does TextEdit have features or performance that Sublime, VS Code, or Atom cannot match? I'm always open to a new editor, just want to understand its sweet spot and strengths.


Not really - the thing to understand here is that TextMate isn't really a new editor, if anything it was one of the first of the new breed of extensible GUI based editors that Sublime, VS Code, and Atom have refined.


It's main feature is it actually feels and behaves like an OS X app.

Obviously for many people this really doesn't matter but a niche of people this is a huge advantage.


This is mainly my reason for using it as well. It's hard to describe but other editors just don't feel at home on the mac for me. Small things like how the cursor navigates across the document and the modifier keys to select parts of text.


On this note, do any of these nice GUI editors provide a good API for control of the buffer contents, multiple cursor positions, multiple highlights, etc?

I'd love to experiment with various editing models but hate the idea of implementing the entire GUI layer. Also I'm dying for a pretty GUI for Kakoune (my editor of choice).

I'd pay hundreds for this honestly. Maybe I'm too niche for it to matter, but I feel like these companies putting so much work into their editors are not fully utilizing the effort they put into it.

Ie, many don't want to switch from Vim, but if we could take a really well polished and established editor like TextMate and make it the GUI for Vim? Well that's just amazing. I'd buy it hands down, for quite a lot. It would need to be full access though, and not explicitly tied to (Neo)Vim.


As far as I know Atom provides an all-you-can-eat-buffet of extensibility. I don't think there's many other editors that offer that, as far as GUI editors are concerned.

Maybe Textadept also offers what you want? https://foicica.com/textadept/


I strongly agree with the sentiment. It would be wonderful to be able to plug GUIs on top of an editor of your choice (kak, (neo)vim, emacs, nano, sublime, notepad++).

It seems a very tough (if not impossible?) problem describing the GUI/editor relationship in a generic and thin API, because of each one's many designs interacting with their usual interface. I would like to follow a project attempting it though!

What do you mean by “being full access”?


> What do you mean by “being full access”?

In general I just meant that the GUI would attempt to reduce assumptions and be as flexible as possible. Ie, I would want to be able to control multiple cursors. Control multiple highlights. etc

Bonus points if it provided various events to trigger built in IDE features like auto complete popups, debug breakpoints, file panes, etc.

Fwiw, I don't think a "generic" interface is ideal. Perhaps for basic editor tasks, but when writing a kak<->sublime (fake example), I think it's acceptable to write it specifically for sublime. Having that binding be interchangeable between sublime, atom, xi, etc seems overreaching with little to gain.

Though, to a degree a subset of general commands which all editors support would be really handy. Similar to the Language Server Protocol, if Sublime implemented the fake "Editor Server Protocol" it would allow Sublime to instantly support Kak, Vim, Nano, etc. ESP extensions for Sublime, VisualStudio/etc would provide full functionality without affecting the ESP Core.

Hmm, this is neat. Perhaps a bit lofty, I just want a nice GUI for Kakoune hah.


Isn't that what Google is making with XiEditor?

(separating the engine from the GUI)

https://github.com/google/xi-editor


Separating the engine from the gui is also were Neovim is headed.


There's jEdit.

It looks horrible out of the box, but it looks as good, if not better than most modern editors.

It runs on the jvm and so is sluggish to launch, but it's an extremely mature product and the plugin ecosystem is nice. Getting the latest plugins is a bit hit or miss, but it's worked great for me and my colleagues.

Font rendering is awesome and has support for ligatures etc.


I used textmate for awhile as my job had a site wide subscription. It was that and BBEdit. I used both as much as I could. I previously came from Atom at the time with all its plugins and I thought hey textmate and BBEdit both have sort of plugin/bundle functionality.

For what it’s worth if anyone is considering switching here are some pros and cons that I personally found. It’s largely based on my specific tastes as well so please if in doubt do try as they’re both excellent software.

Some pros of Textmate(IIRC it was 2.0rc1 or there about):

- the SSH support was very good. Textmate has functionality for this called rmate that lets you edit remote documents and I found it to be very fast and IMHO preferred this over tmux + vim for pure editing of remote files

- textmate has a decent ecosystem of plugins I felt. Lots of themes and bundles for all kinds of features and languages.

- out of the box editing experience is relatively well featured in broad scope

The down sides:

- while I felt like textmate had lots of good third party bundles a lot of them also were really old and were not well maintained. Even some that are maintained dont see tons of updates

- at least for the languages I used (mostly a web stack of JS SCSS/CSS HTML and Python) the autocomplete would leave much to be desired if there was any at all. In parcular I could never quite get Jedi to work with it for python (and the listed bundle in their readme doesn’t really work and updating it wasn’t going well for me) and forget about typescript definition files. I don’t know if this changed at all.

- the API (to me) was a little terse and I didn’t feel it was super well documented IMO. I also found that a lot of the documentation wasn’t or didn’t feel like it was as current as the API could handle too and examples that were up to date are very sparse.

So generally if you rely on very good autocomplete like you get in VS Code, Atom, or an IDE it might not be the best fit for you. This of course was at the time and a lot of this may have improved I have not investigated this in some time.

I have similar feelings about BBEdit for what it’s worth.


I still use 1.x everyday. "Edit Each Line In Selection" and vertical multi line character selection are killer features. I'm really amazed JetBrains hasn't embraced those features...


They have! I use a Jetbrains editor daily and I'd never be able to work without it.

Look under Edit > Column Selection Mode. I think it's bound to Cmd+Shift+8 by default.

If you have a set of lines selected, it will transform them into multiple individual selections too.


I don't remember what "Edit Each Line in Selection" does, but JetBrains does have vertical multi-line character selection. Same as in TextMate, hold down alt, click and drag the mouse to select a rectangle. The JetBrains version sometimes feels less polished than that of TextMate but it works well.


Have you tried VSCode? I believe it has this as well. And Sublime.


And Emacs (C-x r t), and Eclipse (Alt-Shift-a to switch to rectangle mode).


Textmate is still the best Mac native text editor for programming. It’s fast, stable, and gets out of your way. The newer CotEditor is a nice swift based implementation, but still lacks the extensibility that TM has. Long live Textmate!!

PS Textmate 3 should be subscription based to support the next generation of Mac text editor!


Just Say No to subscription software.

The rise of this phenomenon is doing more than almost any other event to drive me to FOSS options.


JetBrains subscription model isn't too bad. If you buy month-to-month it is like any other sub model (access dies at the end of the month/subscription period) but if you buy annually you get a perpetual license for that version so it is kind of like just buying a version outright.

Of course the subscription model gives JetBrains more incentive to keep revving the version number so if you want to stay up to date with the latest and great you have to keep "buying" it every year but C'est la vie.

More info for those interested https://sales.jetbrains.com/hc/en-gb/articles/207240845-What...


I'm unconvinced. "Not too bad" is still "bad."


As someone who moved from Linux and is moving between VS Code and Sublime - how is Textmate better?


Sublime is kind of an ideological child of TextMate, so it's not, really. Lots of folks switched to Sublime when TM development stalled out some time ago. It's a very similar experience, and is similarly powerful.


Some key advantages:

1. Fast and responsive 2. If you write a plugin, you know TextMate is Unix (forked child process, communicate through shared fd, you invoke a command named dialog2 to let TextMate popup any dialogs or completion menu...). You can add editor commands in any language -- you can even make TextMate display complex UI dialog with bash. 3. File browser is nearly a finder (drag and drop like finder, and most finder shortcuts work) 4. Search (there are some hidden shortcuts, but when you master it you feel very fluent)

There are weakness too: TextMate is losing the market, many bundle developers switched to other editors. You can't find many new bundles nowadays. It still doesn't support vim-like keyboard operation... etc


Compared to VS Code: Speed. Textmate opens files instantly, VS Code takes forever to open a new window.

Compared to Sublime: Better Find interface. I really hate the sublime multi-file search result list, it seems like a hack, not a real interface... I just don't get why they would do it like that.


> Compared to VS Code: Speed. Textmate opens files instantly, VS Code takes forever to open a new window.

I just timed it. Opening a new window on the PC I'm using right now takes between 70 and 72 frames, or between 1.16 and 1.25 seconds. On the rare occasion that I do it.

I understand that everyone is a leet uberhacker who is thrown off their flow by a butterfly farting on the breeze, but this is princess-and-the-pea stuff.


One thing that is nice about the way sublime does it is that you can search the search results. Since it shows the found search items contextualized, it can be useful to search the contextualized parts.


You can copy the search results in TextMate, then paste and continue your second search.


If you are used to those two, and happy with them, you probably don't have any reason to switch.

As for me, I've been using TextMate since it's first release more than a decade ago, and I'm simply used to it. I'm more productive in TextMate since I know where everything is without thinking about it.


For a general GUI text editor, I just want notepad++ for Mac. I've yet to find one as good as n++.


I was quite happy with BBEdit. Happier than I ever was with n++, but I never really got into n++ very much


Same here. I've been using BBEdit on the Mac for 20 years now. I suspect BBEdit on the Mac and vi(m) in the terminal will be the only editors I'll ever need.


What does Notepad++ do for you that TextMate or Sublime doesn't?


* The search and replace is a lot better. I can double click a word, CTRL+f, and the search box will contain the word that was clicked. Textmate doesn't auto fill the search box.

* n++ has good replacing when using new lines like \n. And regex.

* n++ column select is very good

* n++ makes it easier to create a new tab

* In n++ when I double click a word, all instances of that are highlighted. Not so in TextMate


* MacOS has a system-wide feature that does this better than N++: Select a word, command-e, and the selected word goes to the "search pasteboard" or whatever it's called. It fills the search box, and also primes command-g (find next/prev) It works with other search features really well, and is cross-app.

* TextMate has amazing regex support. I replace multi-line stuff all the time. Best i've found.

* TM column select is most likely just as good, and it has multi-select (non-column based multi-selection). (I don't know the in's and outs of n++ to comment)

* TM uses the usual command-t for something else, but command-option-n isn't too bad for a new tab.

* command-e to prime selection, then option-command-f to selects all. These are real multi-selections not just highlights, so you can edit-all, copy-paste, etc.


ive been using macos for decades and have never heard of command-e - super nice, thank you for mentioning it.


Seems you are not very familiar with TextMate.

For TextMate, cmd+E, cmd+F then the selection is in the search box. Or, you don't even have to open the search box with cmd+F, just cmd+G to next selection or cmd+opt+F to multi-cursor edit all occurrences.

The regex in TextMate is also very powerful (the unicode support is more powerful). New lines can be matched with \n. Another way is to select new line and repeat the cmd+E trick.

TextMate column selection is even better: you can enter column select mode simply by pressing opt. It is in fact multi-cursor editing, many editing commands like completion / copy / paste can work for each row individually.

Cmd+N or ctrl+cmd+N in TextMate.

The last one, not in TextMate. Though cmd+E then cmd+opt+F can highlight and start multi-edit on all instances of the word.


> Textmate doesn't auto fill the search box

Not sure how it works exactly with Textmate, but for most Mac editors, you double click a word, cmd-E to place the word in the search box, then cmd-G to find again. This saves time because you never see the find dialog and can start searching immediately. I only use cmd-F if I need to fiddle with the find settings. Replacing is just as simple, shift-cmd-E to place selected word in the replace field, cmd-T to replace and find again.


Add this to Sublime's preferences:

    "find_selected_text": true


I believe all of this is present in SublimeText


Yes, but I find it a lot more difficult to use. n++ seems very natural for me.


I'm in a similar camp to yours. I've used tonnes of text editors across Windows / Mac / Linux, and Notepad++ was simply the best amongst all of them.

TextMate comes closest on the Mac which is why it's my primary GUI editor, but I still miss being able to do all the stuff that just came "naturally" in Notepad++.

Also, running Notepad++ in Wine just doesn't feel the same.


TextMate has always had regexp support in find/replace, FYI.


I've been a vim user for at least 18 years, but I still use textmate often as #2. TM's find/replace system is the best of any text editor I've ever used, and if I have to bulk-convert a file from one format to another by hand, the multi-column editing support is first-rate. Often I can just select all first-positions, and word-move around all lines at once, inserting commas and deleting parens. Those features just seem native and intuitive to me, and I miss them dearly elsewhere in the OS. Other editors try to implement those features but it's usually janky and hard to call native-feeling.


Can you elaborate on the multi-line editing problems?

I've been using Sublime Text for a long time, and briefly used Visual Studio Code, and all the actions you've mentioned are supported (if I've understood them well).

However, I'm curious if I'm missing something.


Most of my issues with e.g., SublimeText are on the selection side of things. For example, last time I tried SublimeText, I tried ^W to build a multi-select. Didn't work. Tried incremental-find, didn't work. Finally try quick-find, didn't actually multi-select (yellow highlights), but then notice there are cursors without selection, so finally can move them around and build the selection. I don't remember there being any issues once the multi-cursors are turned on.

Other editors get the other side of the coin wrong, and don't have all the movement operators needed to do a some jobs (word-move while selecting/deleting to remove ragged whitespace).

That all said, there is a big component of what one is familiar with. I'll admit TM's multi-select was the first good implementation i've used and haven't strayed too much since.


Converted to Sublime 3 and never looked back


Love TextMate. It was my first editor. But has anybody else noticed a slowdown in startup time? It feels like it takes longer to open then VSCode, which is surprising for a native application.


I just stumbled upon Tm when I started coding on the macos five years ago and to be honest none of the other editors have really wowed me enough to learn a bunch of new keyboard shortcuts. I tried sublime but it feels like it gets slower and slower the more files you open, that never happens in Tm.

The only thing lacking for me is split windows but it's not that hard to undock one tab and push it to the left and the other one to the right.


I still love textmate and use it daily. I opened up the source a few days back wondering what it would take to add split pane editing (chocolat app’s splits would be a good template to copy), no luck as I have no idea what I was looking at. Eventually figured out it was one of the Oak display classes, but still lost. I would be willing to learn objective cpp to get split panes.


I dind't realise TextMate was open source, and haven't given it a good look.

What do you get when purchasing a license? http://shop.macromates.com/


Look at the "last modified" dates at the bottom of the pages on that site. I'm pretty sure you're looking at the very old pre-open-source version of the site from the previous developer.


The download section links to 2.0 beta 10, which I assumed to be the one in TFA.

I actually cant find these last modified dates you refer to. The footer just display this for me:

    MacroMates Ltd. — Cyprus — HE 259033 — VAT CY-10259033P


Mea culpa, looks like it's only on the wiki pages: Page last modified on July 27, 2011, at 08:56 UTC

That, and the blog that was last updated four years ago.


Previous developer? Was there a change? Isn't it still developed by Allan Odgaard?

(I'd love to read the story of TextMate)


Hmm, now that I look it up, I guess he is still involved. Like I can be bothered to care, as 2.0 was announced in 2009 as 90% complete. Nine years later, there's still no release version. I've moved on, and I imagine a large portion of the user base has done the same. I kinda forgot Textmate even existed until this popped up this morning.


It escapes me now, but I moved to TextMate 1 from BBedit. Was it the lack of tabs in BBedit (they were really against them back in the day), wanting me to pay for again? I forget?

I do remember paying for TextMate. Once.

The Perl bundles come in handy.


any improvements to printing capability (especially color coding)? (v1.5 has limited printing features http://manual.macromates.com/en/printing#printing)

I know it's strange, but as someone who began a career on teletypes with greenbar paper, I sometimes like to see code on a printed page that I can scribble upon.


I loved TextMate back in the day. I remember it being touted as "the beautiful Emacs". I still think it has one of the best snippets engines.


Woah I used TextMate for years until I switched to Sublime in 2012.

Would be nice to know what's new in v2.


Well heres the changelog from that commit: https://github.com/textmate/textmate/blob/9b45699978480cfc90...

Looks like 2.0 has been a WIP since 2013 though? Not sure.


Yeah, same here. But switched to VSCode since a year or two




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: