Xah Emacs Blog

A blackhole you cannot escape.

Spent a few hours here?

Emacs: Xah Fly Keys Customization Major update. Still working on it.

added lots features. minor and major updates. you buy them.

Download Emacs for Windows/Mac/Linux/Android
added download emacs for Android.

Emacs: Xah Fly Keys . Added neo2 layout to the svg diagram. Thanks to p1umps.

M1 MacOS Emacs Listing Directory Failed

Download Emacs for Windows/Mac/Linux/Android

Elisp: Abbrev, Template, for Major Mode updated.

new index Emacs Lisp Advanced

Xah emacs tutorial update has been sent out to past buyers. Merry Xmas and Happy Holidays. Best year going forward.

Buy Xah Emacs Tutorial

Emacs Lisp Doc String Curly Quote Controversy

Emacs: Unicode Tutorial

Emacs: Xah HTML Mode
xah-html-insert-tag now can insert unknown tag, not just html5. Buy it.

Elisp: Cons Pair

Elisp: Test Equality

Elisp: Association List major rewrite.

lol. generic skammy scrapting sites.

xah-fly-keys vs spacemacs 2021-11-24 171847
xah-fly-keys vs spacemacs 2021-11-24 171847

Famous Emacs Users

moving entire ergoemacs.org to xahlee.info

hum, now coded Wolfram Language for several months... now i think i revert a lisp opinion, now i maybe embrace lisp symbols over string. problem with lisp symbols is it pollutes the symbol table, and is hard to rid of. Emacs Lisp: Symbol vs String

the difference is: WolframLang uses symbols extensively sans reservation. It's part of the normal way of using the language, due to symbolic term rewriting nature. every math formula, e.g. (x^2 + x y^3)^4 is arbitrary symbols. in lisp, arbitrary symbols are NOT used much.

here's my WolframLang tutorial:

Emacs: Xah Replace Pairs, xah-replace-pairs.el if you like it, buy it. Support open source coders not working for google.

betterment in xah-fly-keys

2021-10-20 thanks to ctietze [https://christiantietze.de/]

updated. Emacs: Indentation Commands


busied half a day writing this today. emacs lisp, making use of this special hook run-hook-with-args-until-success. so that function can have custom behavior.

elisp run-hook-with-args-until-success 2021-10-18 sStx
elisp run-hook-with-args-until-success 2021-10-18 sStx

Syntax Coloring Problem with Variable

XahTV 2021-10-15 grep/sed find/replace in WolframLang elisp golang python perl PowerShell

XahTV 2021-10-12 grep/sed in emacs lisp PowerShell golang python perl

new feature added. Now can specify a dir min max depth. Emacs: Find Replace in Pure Elisp, xah-find.el

added. code to walk dir with depth filter. Elisp: Walk Directory

massive rewrite on ergoemacs-mode, by mattfidler and big contributor wlandry. [2021-10-06 https://github.com/ergoemacs/ergoemacs-mode/issues/505 ]

Famous Emacs Users added screen of Knuth.

emacs. the nav panel on the left is now organized. Xah Emacs Commands


Emacs Bugs One Decade Delay

How to Avoid Emacs Pinky minor update. Repetitive Strain Injury toys moved to RSI Hand Exercise Toys

Emacs Magit Mode Problem

Emacs will crash Windows 10 if font size is set to big like 300. Try Alt+x text-scale-adjust then keep pressing =

emacs big font crash 2021-09-22
emacs big font crash 2021-09-22.

XahTV 2021-09-14 Emacs Xah Html Mode, the Most Powerful Html Editor

Elisp: Font Lock Mode Basics much expanded.

Best Unicode Fonts for Programer

Emacs Lisp Constructs Speed Comparison

old article, now on hackernews, for the nth time. https://news.ycombinator.com/item?id=28336724

Emacs Modernization: Simple Changes Emacs Should Adopt

created a index page of xah commands. Xah Emacs Commands

sigil war 2

The Sigils WAR, Language Design and Coding Convention


elisp save-restriction narrow-to-region scrolls buffer if message

Seems a annoying emacs lisp problem. If you (save-restriction (narrow-to-region p1 p2) ) , but if you print something with (message) that's long or more than 1 line, the buffer scroll position changes. Took 20 minute to pin down this. test code:

(defun xx (p1 p2)
  (interactive "r")
    (narrow-to-region p1 p2)
    (message "something very long\n or two lines" )))

Added how to setup xah-fly-keys in doom emacs at Emacs: Xah Fly Keys

Elisp: Relation of Curor Position to Begin/End of Matching Pairs in Source Code

2021-08-18 lol. found a gnu elisp code that isn't formatted correctly.

elisp formatting 2021-08-18
elisp formatting 2021-08-18

new Xah HTML Mode

Emacs: Xah HTML Mode

draft tutorial at Xah HTML Mode Tutorial

More feature to come, possibly more keybinding change.

xah html mode rewrite 2021-08-16
xah html mode rewrite 2021-08-16

code update. Emacs: Cycle Hyphen/Lowline/Space

Elisp: Repeat Command by Key, set-transient-map

XahTV 2021-08-03 emacs packages, CSS, command naming bash vs PowerShell, history of Wikipedia

new screenshots and other updates.

Currently looking at how gnu emacs does fill-region. Seems very complex. Thinking not to call it. Always call my own instead.

elisp fill-region 2021-08-01
elisp fill-region 2021-08-01

This is the main code. After 1 thousand lines of jumping about:

elisp fill-region code 2021-08-01
elisp fill-region code 2021-08-01

ok. replaced call of fill-region by a simply replace of newline by space, then replace double space to single.

code updated. xah-reformat-to-sentence-lines at Elisp: Reformat to Sentence Lines

massive updates. work on elisp whole day.

lots of emacs live coding in past week. see XahTV 📺

Elisp: Syntax Table minor update.

more massive updates. Revamping my tutorial. you buy it!

site UI change. move xah commands to elisp example.

Those xah commands with a rocket emoji, on the main emacs tutorial navigation panel is move to the elisp examples navigation panel.

xah emacs commands nav panel 2021-07-20
xah emacs commands nav panel 2021-07-20

so that, the main emacs tutorial index Practical Emacs Tutorial is just teaching you plain gnu emacs.

and if you want the xah commands, get them at Emacs Lisp Examples

update 2021-07-19.

updated, big and small.

Emacs: Mouse Config
major update.


GNU Pepe

Emacs: Select Line, between Quotes, Extend Selection
minor code update

Emacs: Lookup Web, xah-lookup.el
code update.


new index page Elisp Misc Technical Essays

Emacs lisp coding style: let forms

Emacs: Move Image File minor code update.

Elisp: Add Period to Line Ends code update. Now don't add to end of html tag.

Emacs: Show kill-ring
Fixed a bug about image in kill-ring stopping it. Thanks to Christian Tietze (aka DivineDominion)

Elisp: Function Naming, String Equal

Emacs: Xah Fly Keys update:

Xah Fly Keys Major Mode Key Problem

minor updates.

Massive update.

Emacs Keybinding List

Emacs: Key Notation <return> vs RET
minor update.

emacs keybinding saga. xah fly keys. deep in keys.

emacs keybinding saga xah fly keys 2021-06-27
emacs keybinding saga xah fly keys 2021-06-27

Elisp: Create a Hook

major update.

XahTV 2021-06-25 Emacs vs Vscode, on Documentation, Java, WolframLang, PowerShell, Golang, Python

Doom Emacs
Emacs vs vsCode Memory

Emacs: Xah Fly Keys
now there is a dedicated navigation panel on the left.

xah fly keys leader keymaping 2021-06-24
xah fly keys leader keymaping 2021-06-24

by the way, important to know is this Emacs vs vim, Compute Keybinding Efficiency

Emacs: Xah Fly Keys
• added bepo layout, by brabalan. • added 3 more keys to neo2 layout. by sieman. thanks guys.

New finding. Just tested running a find string program on 10330 html files. It seems, once they are run once (file content loaded to memory), emacs lisp and golang script takes about the same time. 3 seconds.

minor update

XahTV 2021-06-21 emacs lisp coding. HTML Lines/Blocks to List

Emacs: HTML, Lines/Blocks to List new code.

Emacs: Select Current HTML Element

XahTV 2021-06-17 Emacs Workflow HTML Rename Source File Path, User Interface Peepshow Windows

Emacs: HTML Rename Source File Path

Emacs: HTML, Delete Tags
code update

Emacs: xah-dired.el added • xah-dired-open-in-msPaint • xah-dired-open-in-krita

XahTV 2021-06-05 Emacs Workflow, PowerShell, Mouse Spin Wheel, Apple M1 Chip

Elisp: Embed Youtube Vid

Emacs: Move Image File
updated code.

Went thru one of my old pages. 10 years ago. Tens of other emacs user's home page or forums, are dead. A mark of time

Elisp: Problems of thing-at-point
new problem discovered.

XahTV 2021-05-31 Emacs Workflow HTML Delete Tags, Alt Tab No Good, No emacs calc, Futurism

Emacs: HTML, Delete Tags

XahTV 2021-05-29 Curly Quotes, Unicode, Emacs, and the Crime of RMS

ergoemacs distro, 10 years ago

google code ergoemacs 20210525165408
google code ergoemacs 20210525165408

Emacs: Xah Fly Keys new supported layouts.

simplified code.

XahTV 2021-05-17 Emacs Lisp Live Coding. Convert MM:SS to Seconds and Reverse

Emacs: Xah Fly Keys
added explanation about showing all leader key sequences.

xah file taxes 2021-05-17
xah file taxes 2021-05-17

Elisp: URL to HTML Link
collected all html link related tutorial into navigation box at bottom

minor updates.

Elisp: Add Period to Line Ends
fixed ! and ? at line ends.

Updated all formatting of emacs functions. Instead of using a list with arrow →, now uses Definition List. [see HTML: Definition List dl dt dd] .

list vs definition list 2021-05-13
list vs definition list

old articles. minor update.

Elisp: Parse Org Mode
updated format.

Elisp: Get User Input
added a read-number

Emacs in Microsoft Windows FAQ
added a video.

Updated code. Removed the target="_blank"


Emacs: Font Setup
added setting up font for symbols and other langs.

XahTV 2021-04-24 Lisp and Wolfram Language Syntax Isomorphism and Design

XahTV 20210418 emacs lisp. Fuzzy matching. Explore ido and helm source code.

emacs M-x invisible gribojedow 2021-04-16
emacs M-x invisible gribojedow 2021-04-16

XahTV 2021-04-14 emacs lisp Live Coding + Tutorial. Add Period to Line Ends

Elisp: Add Period to Line Ends

formatting updates.

XahTV 2021-04-09 beginner emacs lisp tutorial. xah-html-copy-change-relative-link

Command name change.

Emacs: Undo/Redo Saga
massive update.

Emacs: Xah Math Input Mode, xah-math-input.el


Thanks to [2021-04-03 https://github.com/arthurgleckler ]

Emacs: Xah Fly Keys Customization added how to customize M-x

Elisp: Automatic Code Formatting

Emacs, Why Not Use Dash repost

Xah Emacs Blog Archive

Spent a few hours here?