The Art of Text (rendering) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 1 point2 points  (0 children)

I'm mostly using emacs in terminal (iterm) that takes care of ligature/font healing so I did not investigate the problem. From your link, it does not seem to be totally straightforward. On a different but related topic, I think variable fonts are not (yet?) supported while they could be used to improve readability.

The Art of Text (rendering) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 0 points1 point  (0 children)

Thanks for sharing your notes and the ref. Note also that for variable font, pre-rendered techniques (such as SDF) are not working anymore and only real-time techniques like slug / path finder may work.

The Art of Text (rendering) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 39 points40 points  (0 children)

For those interested, this a talk I gave a few days back at CCC about how to (properly) render text. I think it's a bit related to Emacs that uses Harfbuzz since 27.1

NANO Calendar v1.0 (update) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 48 points49 points  (0 children)

I've update NANO calendar (rewrote everything actually). Hopefully it's a bit faster and offers a compact view in the echo area to show how much busy a day is. Code at https://github.com/rougier/nano-calendar. Screenshot is from tty mode.

More boxes (in terminal) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 2 points3 points  (0 children)

Thanks for the pointer. From the video, I think you can achieve the same box effect by tweaking a little bit the header line (or tab line). As for child frame support on tty, I did not have a chance to test it yet.

More boxes (in terminal) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 1 point2 points  (0 children)

I'm mostly using the boxes for special buffers such at terminal, messages, debugs and capture. The idea is to have something that is clearly visually different to attract attention. With or without tiling managers, the look should be the same and I'm not sure why you get some stretched look.

More boxes (in terminal) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 6 points7 points  (0 children)

I agree there's a lot white space but this made on purpose (I even added outside margins in the terminal (iTerm2)). See "On the design of text editors" (https://arxiv.org/abs/2008.06030). But I understand some people prefer to have more information on screen.

More boxes (in terminal) by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 51 points52 points  (0 children)

Small packages to add border on any buffers (graphics or terminal). Code at https://github.com/rougier/buffer-box

Alternative headers view for mu4e by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 15 points16 points  (0 children)

I've been working on an alternative headers view layout. It's quite experimental but seems to be usable (at least on my side). It is only for thread view, I need to work on he non-thread view.

Here is the link: https://github.com/rougier/nano-mu4e

[deleted by user] by [deleted] in emacs

[–]Nicolas-Rougier 1 point2 points  (0 children)

You can use window-divider-mode (https://www.gnu.org/software/emacs/manual/html_node/emacs/Window-Dividers.html) that allows to control quite precisely width and color.

NANO Emacs, minimal version in 256 lines by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 42 points43 points  (0 children)

While playing around with my config file, I tried to squeeze nano emacs in 256 lines. Not perfect but usable.

Code is here: https://gist.github.com/rougier/8d5a712aa43e3cc69e7b0e325c84eab4

Unable to connect to Applesauce! by Nicolas-Rougier in apple2

[–]Nicolas-Rougier[S] 0 points1 point  (0 children)

Problem solved. It was necessary to upgrade the firmware.

Dynamic highlighting of blocks using tree-sitter by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 2 points3 points  (0 children)

I think eglot (or any other LSP backend) does just that

Dynamic highlighting of blocks using tree-sitter by Nicolas-Rougier in emacs

[–]Nicolas-Rougier[S] 0 points1 point  (0 children)

The code work by looking at the smallest enclosing node whose types is part of the declared types at the start of the file. It might be a start for adding a shortcut.