Search

Items tagged with: Emacs


We have finally finished a somewhat lengthy introduction to the new Canvas feature in #Emacs ! It's a self-contained post that will get you started on using the latest canvas feature. We also have really cool demonstrations both using Emacs Lisp and via dynamic modules.

Thanks to @tusharhero for all the reviewing, suggestions and improvements to our website setup. And also to @untrusem, @shepherd and @icy_thought for feedback, suggestions and ideas for what to do with canvas!

monadicsheep.org/blog/an-intro…



I finally made a new release of Futur, my #Emacs library for concurrency based on promises/futures.

The main new feature had been in it for months already but was previously hidden as "internal/experimental": it's the ability to run ELisp code concurrently, in a sub-process. Compared to other packages which offer this functionality (such as the Async or El-Job libraries), Futur aims for a much lower latency by re-using sub-processes (i.e. to avoid the startup delay incurred when launching new Emacs subprocesses). That should make it usable for interactive use-cases such as completion.

This re-use of subprocesses is fundamentally problematic because we need to isolate the side-effects of each use from each other. Futur does that by taking snapshots of the main obarray, which works well only when side-effects are limited to set, fset, ... and avoid setcar, aset, ...
The library has workarounds for the main known offenders (cl-defmethod and put).


Okay so, I cannot still believe it. But the #Emacs Canvas patch is finally merged to upstream master. It's been over 8 months of back and forth, and so much confusion and self-doubt, but it's surreal to see it finally be merged.

A whole new era of graphics within Emacs has opened up with this!

I am going to be forever indebted to @minad for collaborating with me on this, for coming up with the idea when he saw me struggle with PPM. He's been the best mentor to me through all this. This was my first patch to core, and it is through his guidance that I could get into the details of redisplay, etc.

I am also very thankful to @tusharhero @moksh @shepherd who did not give up on this while I was on it. Tushar has been so supportive with reviewing, and helping and in general keeping my hopes high.

All in all, I am very glad to be part of the Emacs community.

Cheers to Emacs, the editor that not only refuses to die, but evolves and lives!


The media in this post is not displayed to visitors. To view it, please go to the original post.

Prompted from the latest #Emacs Canvas patch discussion, me and @minad worked on making canvas work in display margins. We wondered if it would work in the mode-line, and voila it does! Look at that looping magical thing in the mode-line. The best part is that none of this is memory intensive or laggy anymore :D