
Emacs 26.2 Released - lelf
https://lists.gnu.org/archive/html/emacs-devel/2019-04/msg00503.html
======
jes
I have been using GNU Emacs since the late 1980s. It has been my life's
editor, so to speak. At 59 1/2, it seems unlikely that I will ever switch to
another editor. It's served me well. I am grateful to the hackers that created
it.

~~~
sandov
Have you had RSI issues? Do you use it with the default keybindings?

I've tried it a few times but the default keybindings seem unnatural to me.
Not that it's Emacs fault, considering the keyboards they used back then.

~~~
jimbokun
Step one: remap Caps Lock to Control.

~~~
DonHopkins
HARD CORE Emacs users remap Space and Control! ;)

~~~
BasicObject
Where do they remap space to? I've never heard about that one.

~~~
DonHopkins
They remap space to control, and control to space, to make it easier to enter
control characters.

------
AceJohnny2
I'm really happy to see Emacs move faster, and especially the integration of
package management since version 25. The old beast is still kicking!

For what it's worth, I've actually been using on macOS the Mituharu branch
[1], available in MacPorts as "emacs-mac-app". This version adds the
[s]essential[/s] smooth-scrolling feature, and just in general seems to be
slightly better integrated into macOS (except that it doesn't define the
standard macOS keybindings, which I had to create manually. Ironic)

[1] [https://bitbucket.org/mituharu/emacs-
mac/](https://bitbucket.org/mituharu/emacs-mac/)

~~~
manish_gill
Emacs is the one environment that I've been a fan of from afar. I recognize
the brilliance and power of it, but a few things have always kept me away from
using it on the Mac. And I've put in serious attempts, including going emacs-
only, then a custom evil mode, then spacemacs -

\- The server mode compatibility with the way Mac applications are set up. I'd
ideally want an emacs server running in the background, and a client app
open/close seamlessly whenever I'd like. What actually ends up happening is
that I close the client windows but the app never "quits". So it's a zombie
icon always hanging around my cmd+tab list.

\- "Windows" (or Frames?) have generally not worked seamlessly for me. I've to
always put in hacks in my config to ensure the emacs windows work like other
apps do for mac. They're either too small and then size up when config is
applied (which has some latency so it's noticeable when it happens), or they
don't work at all.

\- Font rendering. There is some minute rendering difference in the way the
same fonts that renders on Vim/iTerm/Macvim/Sublime/VSCode/IntelliJ, but it's
the worse by far on my emacs. :(

\- All of these complaints are for the GUI mode tbh, which I prefer to use
since I like to keep my terminal separate from my editor. Terminal-only emacs
is something I tried a few years ago and I remember getting annoyed by
keybinding issues etc.

Maybe all of the above are old issues that are no longer present, or maybe I
was doing things the wrong way. It just never felt like it was a seamlessly
integrated application on the Mac. I hope that has changed or will change. :)

~~~
AceJohnny2
> _\- Font rendering._

Worth double-checking, but I think that's one area Mituharu's is better than
standard Emacs. I definitely recall some font rendering issues with some past
version.

As for your other points, they aren't resolved. FWIW, I work around them:

> _The server mode compatibility_

I just have one long-running Emacs session. I have some colleagues who have
experimented with using a launchd LaunchAgent to start emacs server in the
background when they login. I haven't kept up with their results and I don't
know if there are any side-effects.

> _" Windows" (or Frames?) have generally not worked seamlessly for me_

Since I have a long-running session, this isn't much of a problem for me. That
said, when I do start up Emacs on first login, it indeed takes upwards of 5
seconds to startup, including a window re-themeing and resizing. It's not
great, but like I said, it's only once at startup for me. Furthermore, because
I came from a tiling window manager on Linux (AwesomeWM), I required similar
behavior on macOS. I use SizeUp [1] with shortcuts configured to move my
windows to side/corners of the screen. It's far from being as good as a true
tiling window manager, but I've had to be satisfied with what I can get.

[1]
[https://www.irradiatedsoftware.com/sizeup/](https://www.irradiatedsoftware.com/sizeup/)
(there are alternatives like Moom)

~~~
smsx
If you haven't seen it before, you might be interested in something like
chunkwm[1], a tiling window manager for MacOS. I've been using it for a couple
of years now and its been fantastic and works almost exactly like a linux-
based tiling wm.

[1]
[https://github.com/koekeishiya/chunkwm](https://github.com/koekeishiya/chunkwm)

~~~
AceJohnny2
Thanks! I've eyed chunkwm, but was put off by its externalized keyboard-
shortcut system. skhd scares me a bit, and I figure that since chunkwm is
macOS only, it should be handling its shortcuts itself rather than abstract it
out.

~~~
smsx
Totally fair objection, but I believe the author made that decision primarily
because skhd can do arbitrary keybindings. I have skhd set up to open up iTerm
by pressing cmd-RET for example.

------
laughingman2
As someone who recently saw the light, and converted to Emacs (spacemacs), I
am absolutely delighted that its going strong.

Emacs is the most delightful software I have ever used. I could evolve a
flexible todo management productivity workflow, start writing a journal and
start writing new posts in a distraction free environment all using Org Mode
in just two days. A complete win for someone who went back to paper (rather
unsuccessfully) to organize to-dos after finding digital tools inflexible.

And for python development on remote machine, I get editing and autocomplete
on remote systems out of the box (spacemacs) due to Tramp. I was like wtf, why
didn't I start using this beautiful piece of software years back.

The way Emacs is a programmable platform really changes how I view what a good
software should be. For instance, I was documenting a machine learning
experiment in org mode file. I wanted to mention a metrics result generated as
json by my machine learning code. I could just embed sh into the org file,
execute it (on the remote machine without friction) and print result directly
into the org file. I can trivially compare results in two files and record it
back into org mode easily, even on a remote system.

It has made me think that we need more software which erases distinction of
programming as something distinct from using software.

~~~
nextos
Emacs is really nice because it's essentially a text-mode Lisp machine with
lots of small packages that integrate really well with each other.

This contrasts with ncurses based CLI tools, which are little silos. And of
course, most GUI applications.

In particular, I'm really fond of Org, Magit, Notmuch and PDF-Tools. I feel
they are really nice additions to classic Emacs. Some old packages are really
nice too. E.g. AucTeX, Gnus, Calc, Dired, Eshell... Although I feel Eshell and
Gnus would really benefit from some refactorings.

And of course the myriad of programming modes.

I feel I don't need much more than Emacs, Firefox and a tiling window manager
on top of some underlying OS (preferably Unix).

~~~
rayiner
Holy crap. I had no idea pdftools was a thing. And interleve mode. Brilliant.

~~~
_emacsomancer_
re: interleave mode, check out org-noter for another take on the same theme.

And, yes, pdf-tools is awesome.

------
triska
Thank you so much for Emacs, and congratulations on the new release!

Emacs is reliable, fast and elegant, and a joy to use as a truly _integrated_
environment for all kinds of tasks, including software development.

------
codr7
M-x replace-string, Orgmode and Slime.

I have yet to come across anything that compares, and I definitely prefer
having Lisp built in to Python bolted on to the side.

Emacs used to be considered quite slow, but compared to the latest offerings
its pretty snappy.

Never got it to work well in Windows, but that's not an issue for me anymore.

------
dan-robertson
This is a reasonably small release, I don’t have anything to say about it so I
will instead do what most other people in this thread have done and make a
general comment about emacs:

I think emacs has a few simple advantages:

1\. It’s based on a high quality extensible programming language which
supports writing extensible programs. This makes implementing new features,
new language features, or just modifying/fixing existing ones possible and
usually easy.

2\. The primitives/idioms (hooks,buffers,buffer-local-
variables,markers,interactive functions,advice,keymaps,text properties) tended
to be good choices that allow separate modes/programs within the editor to
interact well with one another. They also allow easy
extension/modification/fixing of the system. I think modules (although useful
and maybe necessary) do not typically fit into this category.

3\. Emacs realises the idea of a programming environment built into a user
interface (ie one where it is easy to interact with the user in a way that is
not stdin/out). I feel like this is often touted as an advantage of
html/JavaScript but in emacs one already has all the other useful
programs/libraries to base one’s own creations on. On the web one always has
to start from scratch. On the other hand elisp does not have any GL/canvas
interface (although you can write an svg (or worse) and display it).

4\. The documentation tends to be pretty good and when the documentation fails

Emacs certainly has disadvantages too. One is setting it up, another is that
it often breaks and it can be hard to get used to emacs. I personally am not
bothered by these because I already know enough to not mind/struggle much
fixing things. Another issue is ide features but I don’t really use languages
with separate ides (unless you count languages where emacs is the ide) so I
don’t mind this. Indeed I mostly don’t use any of the ide attempt features
like projectile or the static code parsing/analysis

~~~
logicchains
Another huge advantage: low resource use. I'm often running resource-hungry
machine learning and dataprocessing jobs on my laptop (and Slack), and when
ram usage gets high often VSCode or Jetbeans IDEs will just freeze up, often
requiring a restart (especially C++ Intelllisense). I've switched to Emacs
exclusively now for coding (C++, Python and Julia), and the productivity gains
from having a rock-solid editor that never freezes or crashes more than
outweight the reduced featureset. To be fair though this seems not entirely
the IDEs' problem, as I used to encounter this problem less on Windows; Linux
just seems particularly bad at providing a smooth desktop experience when RAM
usage is high.

~~~
cjohansson
Working a lot on battery powered laptops without any possibility of charging
rules out Electron and Java based IDEs for me. Emacs works great for me.

~~~
8456523
My hope is that some enterprising developer will write an implementation of
vscode's extensions API in Rust without the Chromium dependency and that that
will lead to something with most of the functionality of vscode, but much less
bloat.

------
bdarnell
Here's the NEWS file for the curious:
[http://git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=e...](http://git.savannah.gnu.org/cgit/emacs.git/tree/etc/NEWS?h=emacs-26)

~~~
josteink
Thanks. Weird it not being linked directly in the post.

“ __New variable 'xft-ignore-color-fonts'.

Default t means don't try to load color fonts when using Xft, as they often
cause crashes. Set it to nil if you really need those fonts.”

I see they finally caved in (although in a quite pedantly trying not to way)
and allowed use of color-fonts. Whee!

~~~
anoncake
Was the problem not that no free OS supported color fonts properly? Emacs does
not belong to the Monochrome Font Foundation, after all. Disabling a feature
because it causes crashes is not ideological.

------
bitwize
Ah, Emacs -- the king of editors. IDEs come and go, but I've found nothing
that has yet convinced me to leave the editor that got me started in Linux
development during the 90s, in which I've done all of my best work ever since.
Yes, I've tried VSCode -- several times. The difference between Emacs and
VSCode is that one is an extensible editor, the other was built from the
ground up to be shaped and morphed to match your workflow, no matter what that
may be. Emacs Lisp is an always-on, instantaneous-feedback, comprehensive
extension language -- and it's a Lisp, even if a flawed one. Emacs is also
self-documenting and self-debugging, making extending it an easy part of using
it. If you type M-. on any Elisp identifier, you will be taken straight to its
definition -- _even for C-implemented primitives of the Lisp VM_ (provided you
have the Emacs sources and Emacs knows where they live). Emacs is thus open
source in a more concretely real way than most open source software -- it
makes examinjng its own source easy and even inviting.

The way things are going, I figure either Emacs will die or I will before I
stop using it. I guess I'm a set-in-my-ways old-timer. So be it.

------
pnw_hazor
I had been away from emacs for almost 10 years since I stopped being a pro
programmer. And even back then I wasn't really an emacs power-user. I just
knew enough to be productive and slightly dangerous.

Recently, I reached my last nerve with MS Word and buckled down to ditch Word
for emacs.

Today I do just about all my writing in emacs (markdown) and then generate
word docx using pandoc at the end. Now, I use emacs all day everyday --
blessed. And I am more productive especially since I am actively pushing to
keep increasing my power-user level.

~~~
black-tea
Writing markdown with emacs is a huge step up. Now you get to take another big
step up when you use org-mode instead of markdown. I'm actually pretty
envious.

~~~
pnw_hazor
I use org-mode for note taking and some task tracking. My main doc writing
setup is more like an ide setup.

markdown<->docx with pandoc lets me use a ref-doc.docx file that ensures all
the styling I need for legal docs gets into the word doc. So you make a
markdown file from the ref-doc.docx then edit the markdown file and convert to
docx using the same ref-doc and everything in docx has the correct style, and
stuff like line numbers and headers are preserved. Pretty sweet.

~~~
black-tea
Yeah, I've done that with pandoc too, but I use org-mode. It's much more
pleasurable to write than markdown. I don't use a great deal of org-mode
features when writing, I suppose, but just being able to fold up sections and
knowing the keys to quickly jump between them and rearrange them is great.

------
bbbobbb
I wish I spent time learning how to use Emacs in the past to a degree where
customizing my installation was faster than learning something else.

As I stand now, it seems really hard to justify to invest time into it when
the benefits over using something very easy to work with (like JetBrains IDEs
for Java or VS Code for Python) sound marginal.

I know experts can fly around in it and it looks amazing. Having a single
point of entry for all kinds of things (ssh to VM, git, text editing, org
mode, email...) sounds great, but it is so much work and it seems like I could
always be spending time doing something immediately beneficial with the tools
I already use. Not to mention that the end result might not even better for
the given application (can I really hope to have easier time developing a Go
app with Emacs and couple not-so-actively developed plugins than GoLand/VS
Code?).

~~~
zelly
At this point honestly it's an objectively worse decision to not use modern
IDEs. (It's not a matter of taste anymore.) IDEs have gotten really good. If
you only use Emacs or vim, you're literally putting yourself at a competitive
disadvantage.

All the avante garde language extensions (Rust, D, etc.) support VS Code
better than Emacs now. VS Code is where all the new ideas are tried first.

~~~
Asooka
I've used both Visual Studio (not Code) and Vim and I have to say, the
improvements over my Vim setup are pretty marginal for C++ code. Every time
people come out saying you can't possibly be productive with Vim in <current
year> it always feels a bit like they're projecting their own insecurities.
All I really miss in Vim is good debugger integration, but so far I make do ok
with plain gdb in a terminal. And this is a big enterprise codebase with ~150
developers working on it. It's perfectly ok to use whatever you like, I just
don't see why you need to accuse perfectly good tools of inadequacy - you
might end up turning away someone who would be most productive in vim/emacs vs
IntelliJ or VS.

That said, VSCode has a lot of good ideas around tooling and I've been toying
with the idea of looking into making a fork that replaces the editor component
with an embedded NeoVim. I feel that would be the best of both worlds, but
obviously a huge undertaking. There is already NyaoVim that implements a
NeoVim gui as a web component.

~~~
Cyph0n
I agree with your point about Vim being more than adequate for development in
a large codebase.

I only learned Vim recently and I have hit no issues so far working on a large
enough codebase such that navigation and autocompletion wouldn’t work
effectively for any IDE.

I instead use cscope and ctags which allow me to selectively setup navigation
and autocomplete from within Vim.

Regarding your last point: that already exists
[https://github.com/VSCodeVim/Vim](https://github.com/VSCodeVim/Vim)

------
singingfish
Picked up emacs in 1993 in a unix lab because it was the only thing that
remotely made sense on these weird X-Windows systems. Was a good choice
because I haven't had to learn anything new since. When I met RMS I thanked
him for it.

------
jakeinspace
I'm so thankful that I stumbled upon emacs in my first year of undergrad. That
discovery led me to the wonderful world of Lisp, and really impacted how I
view software design and the development process. As a C/C++, Clojure,
Verilog/VHDL, and org-mode tool, I can't imagine using anything else. Python
is the only use case that I haven't been 100% satisfied with, although I don't
think Pycharm or VS code offer anything more compelling to me (could be
wrong).

~~~
black-tea
Do you use elpy for python? It's pretty good.

~~~
jakeinspace
I do, I just haven't found the project navigation and jumping to
definitions/uses to be quite as complete as helm and gtags are for C/C++.

------
willtim
Congratulations and a huge thank you to all those involved! Emacs is a truly
remarkable piece of software. I started using it for text editing over 20
years ago, now I use it pretty much as an operating system!

------
andrenth
What’s a good resource for learning emacs for someone who’s been using vim for
more than 20 years?

~~~
tcoff91
spacemacs! I was a long-time vim+tmux diehard and now i'm all about spacemacs.
Org-mode and Magit are just too good to live without. There were a few hurdles
when switching, mainly around auto-indent differences that were harder to
configure with emacs. (dtrt-indent ftw, thank god for that). Also the regexes
are different and not as good (i don't think emacs regexes do negative
lookahead etc...) so some of the advanced substitution wizardry i used to do
isn't quite as good.

But overall i prefer Spacemacs to vim for general development.

I recommend using the develop branch of spacemacs. It sometimes breaks but if
there is something broken it gets fixed really fast, whereas if something is
broken on master then it sometimes stays broken for a really long time.

~~~
andrenth
Are you using evil mode? It seems to be suggested by the spacemacs docs.

~~~
mruts
spacemacs is for vim users. No one who doesn’t use evil mode uses it. Also
most people who use evil-mode probably use spacemacs.

Emacs keybindings are burned into my brain at this point, but if I had to do
it again, I would probably go with spacemacs. I think modal editing is
probably superior.

~~~
cgdub
I don't use evil-mode (anymore), but I still use Spacemacs. I'm too lazy to
configure everything myself (language modes, Helm, Projectile, Magit, etc) so
I use Spacemacs as a starting point and load a bunch of extra ELisp on top.

I'd recommend Spacemacs (even if you're not using evil) if you're new to Emacs
and want to see how different and powerful a fully customized Emacs is when
compared to the bare-bones experience of stock Emacs.

~~~
mruts
I’ve never used it, but I use prelude. Is spacemacs better?

------
billfruit
Is the multi threaded implementation, being talked about for some time part of
this release? Sometimes the single threaded nature of emacs causes problems
while running complex setups like cider, nrepl etc.

~~~
peterbecich
Not from this release, but this is the most recent thing I've been able to
find about concurrency:

> This is also only the first step in bringing threading to Emacs Lisp. Right
> now there’s effectively a global interpreter lock (GIL), and threads only
> run one at a time cooperatively. Like with generators, the Python influence
> is obvious. In theory, sometime in the future this interpreter lock will be
> removed, making way for actual concurrency.

[https://nullprogram.com/blog/2018/05/31/](https://nullprogram.com/blog/2018/05/31/)

~~~
kazinator
Cooperative threads serialized with a global lock didn't originate with
Python. In fact, the traditional Unix kernel was that way and so was Linux
initially.

------
anoncake
> \- Emacs is now compliant with the latest version 11.0 of the Unicode
> Standard.

[http://blog.unicode.org/2019/03/announcing-unicode-
standard-...](http://blog.unicode.org/2019/03/announcing-unicode-standard-
version-120.html)

------
merlincorey
> \- In Dired, the 'Z' command on a directory name compresses all of its
> files.

Dired is so handy, but it does so much. Unless I were to use this feature
often enough I fear I would never remember it was there and just break out to
a terminal and `tar -zcf` manually.

I feel like something already exists for this, but it would be cool if there
was a "Random Mode Tip of The Day" that one could invoke for discovery and
practice of things like this.

~~~
gkya
Use menus. The menus are really handy for discovery. Many I see disable them
(the menu-bar-mode), but it doesn't take up more than about a line, and I go
to it to discover what interesting bits a mode has or to find some
functionality I use less often and forgot the keybinding to it. I do also use
which-key-mode, and there is always M-x apropos & the completion, but menu is
a nice companion to these stuff.

~~~
a_e_k
I'm one who turns them off. When disabled, you can just hit C-down-mouse-3
(i.e., ctrl-right click) anywhere in a buffer to get the global menu in the
form of a pop-up. That works well enough for me for the rare occasions when I
want to go spelunking through the menu (mostly to find some obscure Calc op).

~~~
spopejoy
M-~ (meta-tilde)! Accidentally discovered this the other day.

------
sys_64738
I've been using Emacs in some form since the Amiga build of uEmacs in 1985.

~~~
rudolfwinestock
Did you hear about Vim when it showed up on Fred Fish disks?

By the way, I like your user name. How odd that I remember that command.

------
roryokane
Beyond the “Highlights of this release include” section in the announcement,
the full changelog for Emacs 26.2 is in this NEWS file:
[https://www.gnu.org/software/emacs/news/NEWS.26.2](https://www.gnu.org/software/emacs/news/NEWS.26.2).

------
creamidea
Congratulations :)

When I installed the emacs on MacOS by the step at
[https://www.gnu.org/software/emacs/download.html#macos](https://www.gnu.org/software/emacs/download.html#macos)
(`brew install emacs --with-cocoa`). I got an `Error: invalid options: --with-
cocoa`

Finally, I found the solution here:
[https://emacs.stackexchange.com/a/47774/13172](https://emacs.stackexchange.com/a/47774/13172).

Now, I want to know who can modify this command at the official site.

PS: Homebrew 2.1.0 Homebrew/homebrew-core (git revision 024e26; last commit
2019-04-13) Homebrew/homebrew-cask (git revision 20182; last commit
2019-04-13)

------
JohnL4
Holy cow, the olds came out of the woodwork. Good to see, because I'm one,
too. 57, been using emacs since 1982 or so.

Mostly org-mode these days, plus whatever weird hobby language thing I'm doing
(Haskell, now).

Swapping control & caps lock is essential. I got really painful RSI pain in my
first pinky joint before I did that. Sounds silly until it happens.

And my config file.... :-)

------
prirun
I first used Emacs on a Prime minicomputer in the late 70's. It was ported to
Prime by Dan Bricklan's Software Arts, Inc, of Visicalc fame. Still using it
41 years later.

For anyone curious, the Prime version of Emacs is running on a Prime emulator
I set up. Telnet to em.prirun.org port 8002

~~~
JohnL4
Me too! Except around 1982. :-)

Memories....

------
EnzoKronus
Es un buen editor. Actualmente uso distribuciones. ya que soy principiante.
Uso
[https://github.com/seagle0128/.emacs.d](https://github.com/seagle0128/.emacs.d)
y tambien probe prelude emacs.

------
ngngngng
I'm a heavy user for a vim for the last few years. Is emacs worth checking out
to potentially switch to? Or should I just stick with what I'm already
productive with?

~~~
babarock
Depends what you're looking for. If you want blazing fast text-editing, you're
better off learning advanced vim features like jumps, macros, registers ...

If you care about integration with other text-based tools (like email, instant
messaging, source control, code review, IRC, ...) then switching to emacs will
transform your workflow.

There are a couple of emacs modes that stand out, and in my opinion make emacs
worth it:

* Org-mode ([https://orgmode.org](https://orgmode.org)): A note taking system * Magit ([https://magit.vc/](https://magit.vc/)) the best git client I've ever used.

------
mruts
The best emacs mode I’ve ever used is org-mode. Inline LaTeX rendering, inline
images, outlines, TODOs, it’s amazing. And when you add yasnippet in to the
mix, it gets even better. I can write up math notes faster than someone could
write it on a blackboard!

Emacs is probably the best piece of software I’ve ever used, and will use. I
bet in 100 years, emacs will still be going strong. There’s really nothing it
can’t do.

~~~
_emacsomancer_
Operating systems will come and go, and Emacs will remain.

