
Sublime Text 3 Build 3124 - tiagocorrea
https://www.sublimetext.com/blog/articles/sublime-text-3-build-3124
======
guessmyname
> With these latest changes, Sublime Text 3 is almost

> ready to graduate out of beta, and into a 3.0 version.

Wow, Finally! I have been using ST3 for several years _(wow, years)_ and
always wondered what is keeping the developer from labeling that version as
stable. From all the issues reported here [1] I have never encountered one
while using the editor for pretty much all my work. Those $70 are definitely
worth every penny. Sometimes I cringe from videos featuring ST while using a
non-registered license, this week it happened with a course from Google
engineers via Udacity, Google engineers!!! As if they don't have miserable $70
to buy a license, I assumed they were in a rush and didn't have time to set
the license which I hope they bought.

Anyway, thanks for all the hard work Jon, and recently Will.

[1]
[https://github.com/SublimeTextIssues/Core/issues](https://github.com/SublimeTextIssues/Core/issues)

~~~
gotofritz
Sorry, I must disagree. For 70 bucks you get developers who hardly fix bugs,
who don't listen to users (I posted a few feature requests in their site and
was banned) and with a crazy architecture (try and change the highlight colour
of brackets in BracketHighlighter and see what I mean). They are worse than
Microsoft. Screw them.

It was great when it came out, but now Atom is better.

~~~
bobsoap
I share your sentiment about the buggy software and the unresponsive devs; I
moved to Atom for the same reason.

However great Atom is though, it's unbelievably slow and nearly unusable
because of that. Unfortunately, I haven't been able to find a better
alternative since.

~~~
zeveb
> However great Atom is though, it's unbelievably slow and nearly unusable
> because of that. Unfortunately, I haven't been able to find a better
> alternative since.

Have you given emacs a shot? While once upon a time it was derided as eight
megabytes and constantly swapping, it's extremely fast after forty years of
Moore's Law.

It's cross-platform: if you run an OS, odds are emacs runs on it. It runs in
both the terminal (convenient for remote sessions) and in the X/Cocoa/Windows
GUIs.

It has modes for just about every programming language in use, and then some.

It has a plethora of keybindings for dealing with code semantically, e.g.
navigation by expressions or blocks. If you prefer, it also has vi
keybindings.

It's extraordinarily extensible, so much so that web browsers (three that I
can think of), mail readers, news readers, process browsers and shells have
been implemented in it.

Indeed, for many people emacs can become more of an OS than their OS.

It's pretty awesome.

~~~
rsaarsoo
As a former Emacs fan, I think Atom is actually the best modern alternative to
Emacs.

I just recently looked at my old .emacs file to discover that the majority of
code in there was to get the features that come out of the box with Atom. Of
course Emacs does allow you to configure and program way more than Atom, but
the downside is that you have to do it because the defaults come from computer
history museum - it's great fun though if you like to learn about the history
of the field.

I've been pleasantly surprised just how easy it is to extend Atom. It invites
you to configure it, with very approachable docs and built-in tooling, but it
doesn't force you to.

------
spdustin
From the release notes [0]:

> Minor improvements to file load times

I didn't even realize there was room to squeeze out more performance here.
Sublime Text is wicked-fast opening pretty much everything I throw at it.

[0]: [https://www.sublimetext.com/3](https://www.sublimetext.com/3)

~~~
CJKinni
I agree, but I'm also glad they're still working at it.

Sublime Text is my go to text editor for files over 10MB, and it can get a
little slow loading anything over 1GB. It's awesome to know that it'll be a
little faster when I get into work tomorrow.

~~~
Koshkin
Just curious, why would one want to open a 10MB (let alone a 1GB) file in a
text editor? Isn't that something that could be better (that is, more
efficiently) handled by the likes of grep, head, tail, sed or awk? It's like
issuing a database query that returns a million rows when a more specific
query would have been a better choice because it would result in substantially
less data to look at.

~~~
GuiA
The answer is going to sound terribly boring, but as someone who frequently
deals with very large files of structured text: sometimes you just want to
look at your data and quickly jump around. I want direct manipulation, not a
data querying/manipulation DSL (whether that's grep, sed, SQL, etc)

~~~
SiVal
I wholeheartedly agree that it doesn't sound like much, but sometimes all I'm
doing is applying general, human intelligence to the very vague question of,
Is there anything in here that I'm not aware of but should be? That's not an
easy query to write in grep or SQL, but it's a _common_ query that often turns
out to be important, so I handle it the old-fashioned way: I look it over with
human eyes and see what I find.

------
derefr
> a menu entry to install Package Control

If Sublime is going to acknowledge Package Control, why not just ship with it?
I'm sure the Package Control folks would be glad to move their repo upstream.

~~~
wbond
I've been working for Jon since January.

Part of the reason is allowing it to have a different release cadence, but
also to not default to making outbound network connections without a user
opting in.

~~~
voltagex_
Definitely appreciate that, but couldn't it be a click-through prompt before
making a connection? VLC does something similar on first install.

------
gravypod
I wish the Sublime Text people open sourced their code. I'd buy it from them
in that event and I'd finally have a text editor to recommend. Atom, VS code,
and anything else is completely blown out of the water by ST. There's a reason
it's still around and it's because ST is the only thing that can even think of
doing what sublime text can do.

Good work to the people behind it, it's an amazing feat no doubt. Just please
consider making it free software for all of us who care about that just a bit.
Amazing work none the less.

~~~
TickleSteve
Interestingly, I would prefer that it were subscription-funded.

I would prefer to acknowledge on-going development costs and pay those for a
continually-developed, high-quality editor.

~~~
EasyTiger_
Doesn't the developer basically abandon it for years at a time?

~~~
toxican
Looking back a few years at the dev log, it looks like it was one big update
per year, then for 2016 we've seen an update every 2-3 months. So who knows
anymore? I'm inclined to think these semi-rapid updates are to bring 3.0 out
of beta, so I'm not so sure we should expect the same "speed" for too long.

------
wkirby
Actually the only thing that keeps me from switching back to ST3 is Atoms
first class support for `.gitignore` and excluding files from the quick open
menu.

I know there's a package that claims to update the file ignore pattern to
match the open project, but it really doesn't work well at all.

~~~
teddyc
Create a Sublime project. You can have project settings to ignore file and
folder patterns. I set this up at the same time I create a .gitignore file for
a repo.

Whenever you re-open a project, it re-opens every tab you had when you closed
the project, which is really nice. Even unsaved files are restored.

[https://www.sublimetext.com/docs/3/projects.html](https://www.sublimetext.com/docs/3/projects.html)

~~~
csharp
Just an FYI, Atom does these things too. Tracks all of your open windows,
tabs, which tabs you were on, keeps unsaved changes, etc...

------
connorshea
I really, really wish it was open source. I understand why it isn't, but with
its main competitors being Atom and VSCode, it's hard to warrant using a
closed source text editor even if it's so much faster and I'm used to it.

~~~
mangeletti
I've never been more impressed by an editor than I am by Sublime. Literally
everything about the editor is excellent[1].

My rule of thumb is:

    
    
        If I'm on a server via SSH, it's Vim. Otherwise, it's Sublime.
    

1\. Actually...
[https://news.ycombinator.com/item?id=12553584](https://news.ycombinator.com/item?id=12553584)
(sorry if you're a robot and just got stuck in recursion)

~~~
modeless
If I have ssh access, I use sshfs to edit remote files with my local copy of
Sublime. I also set up a Sublime build system that calls the compiler remotely
over ssh. After I set my ssh config to cache and reuse connections, it adds
virtually no overhead. Builds are one keystroke, errors show up in the editor
just like normal, and small builds can still be done in just a fraction of a
second.

The only problem with this setup is that sshfs is bad at recovering from
network errors. If someone made a version of sshfs that could automatically
reconnect after an interruption then this setup would be practically
indistinguishable from working locally, even on moderately high latency
connections.

~~~
0942v8653
You likely have already tried this, but in case you haven't: sshfs has a mount
option -o reconnect which tries to be a bit more resilient about this sort of
thing.

~~~
modeless
I didn't know that, thanks!

------
statictype
The only thing I really want from Sublime (or VSCode) is an API that lets me
display an output panel/sidebar with an html engine embedded in it.

Atom provides this - it also provides arbitrary html in the editor itself
which is cool but also what makes it slow.

I just want it for the supplementary panels that show build outputs,
documentation or other contextual information.

That's enough to let me customize it for our team's usage.

~~~
octref
We are working on it. [0]

[0]:
[https://github.com/Microsoft/vscode/issues/12163](https://github.com/Microsoft/vscode/issues/12163)

------
supergetting
When I first started using Sublime, I disliked the occasional popups, and
thought I'd just keep using it without paying $70 for a text editor?!?!

But I HAD to buy the thing! Not because I wanted to avoid the annoying popup,
but because of everything we know about Sublime today; performance, simplicity
and intuitiveness of the UI, packaging system, etc.

The article mentions that they're coming out of beta in the near future! nice!
and I just noticed they're already mentioning sublime text version 4 (under
sales FAQ page).

------
modeless
I'm surprised so many people here are using Sublime to edit >100 MB files.
Yes, it handles them (as long as the lines aren't too long), but it always has
to load the entire file before displaying the first line. Aren't there some
editors that don't have to do that?

On a related note, large files are often binary. I appreciate that Sublime can
display binary files but it's pretty bare bones, and there's no editing
support. I'd love to see what Sublime HQ could do if they worked on binary
editing support for a couple of milestones. For example, the ability to locate
and edit strings in binary files would be cool, as would a basic hex editor.

~~~
PavlovsCat
> it always has to load the entire file before displaying the first line.
> Aren't there some editors that don't have to do that?

[http://www.ultraedit.com/](http://www.ultraedit.com/)

ST is neat. UE is heavy duty.

~~~
wodenokoto
Funny this doesn't come up more often when discussing St, as it is about the
same price and an old name.

How is it to use?

~~~
PavlovsCat
> How is it to use?

Depends on how you configure it, it can be a lot of things. The UI is pretty
amazing, but I don't have the knowledge or time to do it justice in the least,
sorry :)

To be perfectly honest, the first time I finally tried it after hearing so
much about it for so long, Sublime Text kind of disappointed me. You can't
even print out of the box -- waitwhat? It does other cool things, true, and
there is room for more than one text editor, text files are awesome that way.
But still, I felt a bit like when everybody was going nuts over Firefox
because they didn't know about Opera. I love Mozilla (a lot) and harbour no
ill will towards Sublime Text, but god damnit, software isn't as tight as it
used to be. I don't know anything about anything and even I can tell.

~~~
modeless
Printing isn't a task for a text editor. If you want to print something, open
it in your word processor. I would be disappointed if the Sublime devs wasted
a bunch of time developing 3-platform printing support when there are about a
million more useful editing features they could be working on instead.

------
Manishearth
> Also new in 3124 is Show Definition, which will show where a symbol is
> defined when hovering over it with the mouse. This makes use of the new
> on_hover API, and can be controlled via the show_definitions setting:

Is this just an API hook which a plugin can add a definition resolver to, or
does this automatically find definitions for all builtin languages? If the
latter, this is super cool!

If the former, I'm going to try and update
[https://packagecontrol.io/packages/YcmdCompletion](https://packagecontrol.io/packages/YcmdCompletion)
for this

\-----

Edit: omg works out of the box. Seems to be a simple grep-based thing (so it
lists all definitions of the same name), but that's still quite useful!

~~~
sunnyps
It's similar to Goto Definition (F12). It's based on parsing according to the
syntax definition (which only does line by line contextual parsing) so kinda
like ctags. In practice it works better than the painfully slow "smart" and
often non-existent* symbol navigation in IDEs (although QtCreator is very good
in this regard).

* for large projects

~~~
skrebbel
I suspect like you only used C++ IDEs? It's pretty much instantaneous (and
_always correct_ ) in common IDEs for languages like C#, Java and TypeScript.

~~~
sunnyps
Yes, I only meant C++ IDEs, I should've clarified that.

Although I'm not sure how IDEs for other languages deal with humongous
projects (~ millions of LOC).

~~~
skrebbel
Remarkably well. Because there's no macros or templates and not a lot of type
inference in languages like Java and C#, it is very easy to look up the type
name of an identifier.

Then, because in e.g. Java the fully qualified name of a type is forced to
have a direct relationship to the directory structure¹, the IDE can just look
up the .class file in which the type was defined. If the .class file doesn't
exist or is outdated, the IDE recompiles but it only needs to do this once and
then it can cache it. This .class file itself is a small file of JVM bytecode
that allows very fast lookup of all its methods and attributes and whatnot.

This means that it's not a search at all - it's only a lookup (look up name of
identifier, determine file location, look up definition), and project size
hardly matters.

I often wonder whether they realized how easy they were making things for IDE
builders when the Java team invented this stuff 20 years ago. If not, it's a
pretty lucky hit and it works great. .NET, even with the benefit of Java-
hindsight, didn't do this as well. Assemblies are nice but they make lookup
and recompilation a bit more messy.

¹) nitpickers will complain about .jar files and the classpath, but you can
look up once which types are in which directory or .jar, cache that, and
you're done.

------
martanne
A number of people expressed the need to edit large files. For the development
of my own editor[0] I would be interested to know what kind of usage patterns
most often occur. What are the most important operations? Do you search for
some (regex) pattern? Do you go to some specific line n? Do you copy/paste
large portions of the file around? Do you often edit binary files? If so what
types and what kind of changes do you perform?

[0] [https://github.com/martanne/vis](https://github.com/martanne/vis)

~~~
PeterisP
1) Going to a specific location (e.g. a location that shows up in some error
log about processing that data file) and eyeballing it. Being able to go to a
_specific_ location is sometimes important (e.g. row 12873, character 233).
Syntax highlight is important, it sometimes makes obvious something that's
subtly malformed. Syntax highlight that doesn't take an eternity for large
files is a hard issue.

2) regex search/replace - interactive grep/sed.

3) Very large edits - e.g., find a specific location and remove all data
entries before that so that the problematic entry now would be the first one;
essentially cutting away half of a very large file.

4) Do note that you might have very, very large lines - it's not that uncommon
to have the whole file in a single line, e.g. non-pretty-printed json data.
Some editors work well with large files but simply die if there's a line with
a million characters.

~~~
martanne
Thanks for the feedback!

Yes syntax highlighting for large files is a hard issue. I'm not really aware
of an accurate an high speed solution supporting editing operations in huge
files.

In principle the underlying data structure used by vis supports all
modifications with linear complexity in the number of editing operations since
file load. This is independent of the file structure (i.e. single line files
should be well supported). However the frontend code hasn't yet been optimized
so in practice there might be some problems.

Unless one specifies the blackhole register when deleting large parts of a
file this will create an in memory copy (to enable later pasting at a
different location). Better would be to keep a reference to the existing
immutable text region.

~~~
Shorel
Another thing I sometimes do:

Open a medium sized file in some format (CSV for example)

Select all

Change the selection to individual selections, one per line.

Edit in parallel, doing the same edit to all lines.

When the file is not that big, this sequence of actions is amazingly fast in
ST.

------
mangeletti
I have one single complaint about Sublime Text:

In order to truly clear your history (files open, last searches, etc.), I have
to maintain a script with the following:

    
    
        find ~ -name *.sublime-workspace -delete
        rm ~/Library/Application\ Support/Sublime\ Text\ 3/Local/Session.sublime_session
    

Other than that, see
[https://news.ycombinator.com/item?id=12553515](https://news.ycombinator.com/item?id=12553515)

~~~
slowmovintarget
My complaint is actually not with ST3, but with Package Control. I have to
maintain my user preferences in git because PC rewrites them and resets the
theme every time it updates. (I run the Material Design theme)

~~~
wbond
When you say "reset" do you mean it doesn't re-enable the Material theme once
the upgrade is complete?

~~~
slowmovintarget
Yes. This used to be a problem every time. In the last month or so this has
happened to me only twice.

~~~
wbond
Please do open an issue in the future – I hadn't heard of the issue happening.

~~~
slowmovintarget
Acknowledged. I'll do that if it happens again.

------
sagivo
sublime is by far my favorite editor. fast and lots of plugins. specially if
you work with big files. i sometimes need to work with files larger than 150MB
and it takes few seconds to open. atom crushes and can't even open the files.

~~~
traduz
Been using it for a long time and that's the main reason i do, so good at
looking at those huge log files.

------
TsomArp
I'm an UltraEdit user. I have tried Sublime Text because of all the nice
comments, but I don't see it. Can somebody that also uses or used to use UE
tell me what I'm missing?

------
onetom
Here comes a piece of history. I replied this to my Sublime Text 2 purchase
confirmation email I got from Jon Skinner on 2011/08/30:

> hi jon, > > my salary was reduced by 30% just yesterday, but when i woke up
> today, > they 1st thing i did was purchasing sublime. it's _that_ fucking
> awesome! > i wish it would be open source, so people could learn from it...
> > but, hey, i doubt many open source developers could contribute quality >
> code to it.. :) > > if u could implement the elastic tab stop feature (which
> has some reference > implementation on the
> nickgravgaard.com/elastictabstops/ site), then i > would be happy to pay
> another 60bucks for it. > actually, u could sell separate license for the
> version which has this > feature... > i know it would be quite elitist, but
> it worked well with the black macbooks > back then...

------
putlake
On Mac I use TextWrangler for quick editing and VS Code as the IDE. I never
need to open super large files so after reading this discussion I tried to
open a 177MB text file in TextWrangler and it opened quickly and was editable.
Searching within the file was also super fast.

------
jayflux
The Official Sublime Rust package supports this update:
[https://github.com/rust-lang/sublime-rust/pull/87](https://github.com/rust-
lang/sublime-rust/pull/87)

------
woodruffw
Awesome! I'm especially liking the Phantoms API - there's a _ton_ of potential
there for richer plugins and graphical inlining.

I've moved between maybe half a dozen editors over the past half-decade, but I
always end up coming back to Sublime.

------
ricardobeat
The addition of Phantoms [1] is the killer feature in this release for me.
This will allow embedding custom HTML [2] inline in the editor, which is
something I've been dreaming of - the power of Atom's nice plugin UIs with no
compromise in speed!

[1]
[https://www.sublimetext.com/docs/3/api_reference.html#sublim...](https://www.sublimetext.com/docs/3/api_reference.html#sublime.Phantom)

[2]
[https://www.sublimetext.com/docs/3/minihtml.html](https://www.sublimetext.com/docs/3/minihtml.html)

------
0xmohit
100% CPU since Build 3124 [0].

[0]
[https://github.com/SublimeTextIssues/Core/issues/1387](https://github.com/SublimeTextIssues/Core/issues/1387)

~~~
Egidius
same here :-/

~~~
Egidius
The CPU load was only for a short period. When ST3 indexed my project (which
is quite large) everything was fine again

------
nonbel
If this issue with the SublimeREPL package could be resolved, it would be
perfect: [https://stackoverflow.com/questions/27083505/sublime-
text-3-...](https://stackoverflow.com/questions/27083505/sublime-
text-3-python-repl-slow-print)

Anyone have a guess as to why this happens? It causes me headaches using R as
well.

------
dman
One minor feature request - can you please simplify the setting of font size
for the tree browser and for the menu entries. (I know that tree browser font
size can be set by the theme, but it is a bit non trivial using
PackageResourceViewer to patch theme files to do this). I still havent found a
way to change the font size of the menu entries.

------
jeffijoe
Been using Sublime Text 3 for years (and I do have a license), and been trying
out Atom/VSCode lately. Atom can get real slow, but I feel like the extensions
for Atom are of higher quality (linters, TypeScript integration). I think it
might have something to do with HTML/CSS/JS vs Python for plugin development.

------
codepunker
Amazing! ST is the only editor I considered good enough to pay for and I can
see it's getting even better!

------
makapuf
I suspect still ST3 still being in Beta is a service to ST2 users, who paid it
but for a relatively short time before first st3 betas and whose license key
will be valid with ST3 betas and not ST3 once out. Not that I am in this case
at all.

------
muktabh
Thanks for the hard work sublime text team for making programming so
enjoyable. I already find ST3 so flawless that to think it still can be
improved is beyond me. Once again, great going.

------
pbnjay
Whoa very nice new features! Now I need GoSublime to support them!

------
realraghavgupta
Atom is really good to go, but after using it and some others, I am back to
Sublime Text. They are still working on version 3.0 but the beta is also so
stable.

------
barpet
I am an emacs person that converted from ST (on Windows/Linux) and TextMate
but I have always preferred ST/Textmate over anything else available.

~~~
tom4000
Me too. Started with some GUI editors like Text Mate and Gedit; came to ST3
(bought a license); tried Atom; got convinced to VIM and use Emacs with evil
now.

------
dikaiosune
Very cool to see a screenshot from servo's codebase.

~~~
kibwen
Clearly this means that the Sublime Text author is envious of Atom, and
intends to rip out the native GUI for some browser-based goodness. :P

------
ld00d
My favorite new feature:

> Settings now open in a new window, with the default and user settings side-
> by-side

------
brightball
Sublime is slowly making me end my hold out that Textmate will one day take
over again.

------
alexmorenodev
I'm craving for transparent background.

------
niahmiah
nobody cares. Atom ftw

------
gotofritz
There are a few annoying things about ST3 which aren't so on Atom

\- no engagement with the developers. For $70 I expect to be able to file bug
reports and maybe some feature requests. Without being banned.

\- multi file search is ridiculously poor. I can't save search patterns, the
long text box with all the file patterns is hard to navigate (on OS X if you
put the cursor at the end it starts scrolling), but most of all the result
pane doesn't stick as it used to. I have to search again every time I click on
a file from the results then close it.

\- copy and paste is STILL buggy on OS X. Sometimes you paste a string and it
puts it in the line above the one where you have your cursor.

\- package control is not included. It's just common sense

\- the scrollbars are invisible on OS X. I don't want a minimap, it used too
much space and adds too much noise

\- I use BracketHighlighter. Every time I want to customise the highlight
colour it's a royal pain in the neck because of ST3's crazy architecture

I'd much rather use atom these days.

~~~
dsego
1) And maybe a massage once in a while, am I right?

2) My only gripe is that it can block the UI.

3) Not experienced.

4) Would be nice, but not a deal-breaker.

5) That's how scrollbars work on macos. You can change it with
"overlay_scroll_bars": "disabled". Minimap can also be disabled via View >
Hide Minimap.

6) No idea.

7) Who is stopping you?

~~~
gotofritz
Expecting developers to allow you to report bug is hardly something that
warrants idiotic sarcasm.

~~~
nekopa
How did you get banned? I saw a lot of bug reports and feature requests on the
ST forum, there is even a whole sub board dedicated to feature requests which
seems to be quite active.

~~~
gotofritz
I commented on a thread started by an obvious spammer, of the 'I made millions
working from home' sort (ironically, by saying "Spam")

------
bcherny
Does Sublime still exist? With all the hubub about VSCode and Atom, I've sort
of forgotten about it.

~~~
DigitalSea
>Does Sublime still exist?

Did you even click the link? This is an update changelog...

Having said that, while competitors have popped up like Visual Studio Code
which is pretty darn good, Sublime was one of the first text editors that I
used years ago when the landscape was primarily dominated by Dreamweaver and
TextMate. It was a step-up from Notepad++ which many open source lovers used,
but lacked the finesse that ST brought to the table. When it comes to opening
large files, especially large SQL dumps >1gb, Sublime Text is still the king
in my opinion. I still occasionally need to do a find and replace on a large
file and nothing beats Sublime Text (except maybe command line editors like
Vi/Vim, which I can't use).

I primarily focus on front-end development nowadays, so I primarily use
Webstorm, but if I need to write some Markdown, edit some PHP/Python or edit
large files, Sublime is still my go-to. Such a shame people think you need to
update something every day to keep using it, ST has been incredibly stable for
years now. Even ST3 which was in beta for years has been quite stable.

~~~
threeseed
> Did you even click the link? This is an update changelog...

They haven't exactly been keeping to a regular update schedule.

So not hard to blame people for wondering if it was abandoned or not.

~~~
robotresearcher
Also not unreasonable to expect people to take a glance at the article they
are commenting on.

