Understanding Embark in GNU Emacs (a bit) and some 'stupid' Embark tricks

Lobsters Hottest Tools

Summary

An exploration of the Embark package in GNU Emacs, covering basic understanding and some 'stupid' tricks for using it.

<p><a href="https://lobste.rs/s/secptg/understanding_embark_gnu_emacs_bit_some">Comments</a></p>
Original Article
View Cached Full Text

Cached at: 06/10/26, 12:22 AM

# You're using a too-old browser Source: [https://utcc.utoronto.ca/~cks/cspace-bad/cspace-old-browser.html](https://utcc.utoronto.ca/~cks/cspace-bad/cspace-old-browser.html) ## You're using a suspiciously old browser You're probably reading this page because you've attempted to access some part of[my blog \(Wandering Thoughts\)](https://utcc.utoronto.ca/~cks/space/blog/)or[CSpace](https://utcc.utoronto.ca/~cks/space/), the wiki thing it's part of\. Unfortunately you're using a browser version that my anti\-crawler precautions consider suspicious, most often because it's too old \(most often this applies to versions of Chrome\)\. Unfortunately, as of early 2025 there's a plague of high volume crawlers \(apparently in part to gather data for LLM training\) that use a variety of old browser user agents, especially Chrome user agents\. To reduce the load on[Wandering Thoughts](https://utcc.utoronto.ca/~cks/space/blog/)I'm experimenting with \(attempting to\) block all of them, and you've run into this\. If this is in error and you're using a current version of your browser of choice, you can contact me at[my current place at the university](https://www.cs.toronto.edu/~cks/)\(you should be able to work out the email address from that\)\. If possible, please let me know what browser you're using and so on, ideally with its exact User\-Agent string\. ## A special note to people using Inoreader \(the feed reader\) I am not blocking Inoreader's feed fetcher or considering it to be too old, and it routinely fetches feeds from me\. I don't know why Inoreader is showing you this page\. It is possible that they're periodically trying to fetch feeds or pages with an old browser HTTP User\-Agent \(or an actual old browser\) and taking the results of that fetch \(this page\) as what they should show people instead of the results of their syndication feed fetcher agents\. This is a bad mistake today;[the results of modern HTTP fetches depend partly on the HTTP User\-Agent used](https://utcc.utoronto.ca/~cks/space/blog/web/HTTPResultsAndUserAgents)\. ## A special note to people using Feedly \(the feed reader\) Much like Inoreader, Feedly is periodically fetching my syndication feeds with a fake, old browser HTTP User\-Agent header, which fails, and is then grimly latching on to the results for their actual feed fetching with their regular Feedly HTTP User\-Agent\. There is nothing I can do about this; you should contact Feedly support, if you can find them\. See[this comment of mine in Wandering Thoughts](https://utcc.utoronto.ca/~cks/space/blog/web/FeedReaderErrorsProblem?showcomments#cks-20260215115901)for more details\. ## A special note for people using Vivaldi Due to an ongoing attack, you may need to change[the "User Agent Brand Masking" setting](https://help.vivaldi.com/desktop/miscellaneous/user-agent-brand-masking/)so that your Vivaldi identifies itself as Vivaldi, instead of Google Chrome\. This applies to even the current version of Vivaldi\. ## A special note for people using archive\.\* You may be seeing this through archive\.today, archive\.ph, archive\.is, and so on\. Unfortunately, archive\.\* crawls pages to archive in a way that is impossible to distinguish from malicious actors\. They use old Chrome User\-Agent values, crawl from IP address blocks that are widely distributed and not clearly identified as theirs, and some of their IP addresses have falsified reverse DNS entries that claim they are googlebot IP addresses \(which is something that is normally done only by quite bad actors\)\. I suggest that you use archive\.org, which is a better behaved archival crawler and can crawl[my blog \(Wandering Thoughts\)](https://utcc.utoronto.ca/~cks/space/blog/)\. Chris Siebenmann, 2025\-02\-17

Similar Articles

Even More Batteries Included With Emacs

Lobsters Hottest

A blog post highlighting lesser-known but useful built-in features of Emacs, continuing a series that aims to improve discoverability of stock Emacs capabilities.

May I recommend… understanding Emacs's patterns

Lobsters Hottest

The article explains Emacs's architectural patterns, focusing on the universal buffer data model and incremental completing read (ICR), comparing them to a rose's roots and petals. It highlights how Emacs unifies interfaces and allows extensibility via Elisp.

Underappreciated builtin: Grand Unified Debugger

Lobsters Hottest

This article highlights the capabilities of Emacs' Grand Unified Debugger (GUD) built-in, emphasizing its multi-debugger support and graphical GDB interface, including features like setting breakpoints by clicking on the fringe and stepping through code.

The Emacsification of Software

Hacker News Top

The author discusses the frustration of reading Markdown in the terminal and describes using Claude to quickly build a custom macOS Markdown viewer (MDV.app), illustrating how AI enables rapid creation of personal software tools.

Emacs 31 Is Around the Corner: The Changes I'm Daily Driving

Hacker News Top

Emacs 31 is approaching with improvements like simpler tree-sitter setup and a built-in markdown-ts-mode. The article details features the author has been using from the development branch, highlighting reduced configuration overhead.