Xah Emacs Blog

Buy Xah Emacs Tutorial. Master emacs benefits for life.

Tips & Tricks for emacs and emacs lisp.

Emacs: Command to Lookup Google, Wikipedia, Dictionary, Programing Reference (package feature added. Version 2.1.0. Might take a while for MELPA to pickp the change)

emacs eww browser cookies/cache file location

it's at ~/.emacs.d/url/

detail at Emacs: Using Eww Web Browser. updated.

emacs lisp: convert string to symbol, symbol to string

;; convert a symbol to string
(symbol-name 'defun)

;; convert a string to symbol
(intern "something")

Emacs Lisp Symbol (tutorial) (minor update)

emacs lisp: test even/odd

(= (% n 2) 0) ; test even
(= (% n 2) 1) ; test odd

Emacs Lisp Tutorial by Example (minor update)

Emacs: Commands to Move Cursor by Brackets, Quotes (minor update. Now cursor movement covers ALL brackets. This replaces 90% need of ace-jump or similar.)

Emacs Lisp: Filter a List (minor code update)

Emacs Lisp: Using thing-at-point (minor update)

Computer Keyboard: Home/End Key Cluster Arrangement: Horizontal vs Vertical (repost)

xah-elisp-mode is now on MELPA


Lots improvements in the past half a year.

home page Emacs: Xah Emacs Lisp Mode

if you have any questions about emacs, elisp, or keyboard, ask me.

post at g+ or twitter

Now on github and MELPA. Emacs: xah-math-input.el

Emacs: Associate a File with a Major Mode (repost)

Celebrity Programers with RSI (Repetitive Strain Injury) (repost)

Emacs: avy ace-jump vs isearch

Emacs: isearch by Arrow Keys

2 videos on the Kinesis keyboard. Kinesis Keyboard Review

Does Mechanical Keyboard Reduce Risk of Repetitive Strain Injury?

if you are thinking of buying a mechanical keyboard, and have questions, post and i'll try to answer.

post here https://plus.google.com/113859563190964307534/posts/DyxXPXehnit

I think you need a Google account. But you can also ask me on twitter.

GNU Logo Latte Art (repost; on its own page.)

Happy Hacking keyboard replacements. Keyboards without Numeric Keypad (major rewrite.)

Daniel P Friedman and Matthias Felleisen's books

Daniel Paul Friedman (born 1944) is a professor of Computer Science…

With David Wise, Friedman wrote a highly influential paper on lazy programming, specifically on lazy streams (ICALP 1976). The paper, entitled “Cons should not evaluate its arguments,” [1] is one of the first publications pushing for the exploration of a programming style with potentially infinite data structures and a form of programming that employs no computational effects (though programs may diverge).

In the 1980s, Friedman turned to the study of Scheme. He explored the use of macros for defining programming languages; with Kohlbecker, Felleisen, and Duba, he co-introduced the notion of “hygienic macros” in a 1986 LFP paper that is still widely cited today.[2] With Haynes and Wand, he simultaneously studied the nature of continuation objects, their uses, and the possibilities of constraining them.[3] Following that, Friedman and Felleisen introduced a lambda calculus with continuations and control operators.[4] Their work has spawned work on semantics, connections between classical logic and computation, and practical extensions of continuations.

Friedman is also the lead author of Essentials of Programming Languages, a text book on programming languages. As such, it changed the landscape of language text books in the 1980s, shifting the focus from surveys of languages to the study of principles via series of interpreters. Today's text books on this topic tend to follow this organization, though use operational semantics and type theory instead of interpreters. Like The Little LISPer, Essentials of Programming Languages is a long-living book and is in its third edition now.

Most recently, Friedman resumed work on his “Little” series with The Reasoned Schemer (with Byrd and Kiselyov), explaining logic programming via an extension of Scheme.

Daniel P. Friedman

Daniel P Friedman home page: http://www.cs.indiana.edu/~dfried/

Matthias Felleisen is the founder of PLT Scheme Lisp (now Racket Scheme Lisp). Felleisen was a student of Daniel P. Friedman.

Matthias Felleisen

Daniel P Friedman books
Daniel P Friedman books on amazon

Ruby Creator Matz on How Emacs Changed My Life (repost)

simple example of using emacs lisp for text processing. Emacs Lisp: Text Processing, Transforming Page Tag (old page, updated)

new Emacs: Convert Straight/Curly Quotes

Emacs: Copy/Cut Current Line If No Selection (updated code)

Emacs Lisp Idioms: How to Cut/Copy/Paste to/from kill-ring? (minor update)

Emacs: What's Region, Active Region, transient-mark-mode? (updated)

now on MELPA. http://melpa.org/#/xahk-mode

home page: Emacs AutoHotkey Mode (ahk-mode)

see also: AutoHotkey Tutorial ⌨

new from Microsoft: Microsoft Universal Foldable Keyboard

Keyboard for Programers: Layouts, Shortcuts, Macros, RSI ⌨ redesigned index page. Everything you ever want to know about keyboards.

Mac OS X: How to Create Keyboard Layout and Keybinding ⌨ (minor update)

Emacs: Using Org Mode for Todo (minor update)

Emacs Lisp: Escape Quotes (minor update) This is useful for elisp coders.

Emacs: Use Alias to Increase Productivity (minor update)

Thanks to George Jones

xah-lookup.el on MELPA

xah-lookup.el is now on MELPA. http://melpa.org/#/xah-lookup

Emacs Lisp: CSS Compressor (updated code)

What's Lisp-1, What's Lisp-2? Bad Jargon or Good Jargon? (old rant.)

Emacs Lisp: Convert Unicode Chars to ASCII (Zap Gremlins) (updated code. now supports all Chinese pinyin tones.)

Emacs Lisp: Chinese Character Reference Linkify (updated code)

Emacs: Command to Lookup Google, Wikipedia, Dictionary, Programing Reference (major rewrite)

Emacs Lisp: View URL in Web Browser: browse-url (major rewrite)

Now on MELPA. Emacs Lisp: Multi-Pair Find/Replace: xah-replace-pairs.el

Renamed from “xfrp_find_replace_pairs.el”, also rewrote many parts.

Thanks to Anders Johansson and Steve Purcell

Emacs Chinese Input for Studying Chinese (added screenshot)

New version of emacs tutorial is out. Buy it, thanks. Buy Xah Emacs Tutorial.

if you already got it, you'll get a update thru email tonight.

Emacs Keybinding Syntax Examples (minor update)

Emacs: Dired Setting Tips (minor update)

Emacs Lisp: Hash Table (complete rewrite)

Emacs: Rename Files Interactively (updated)

Emacs: Remapping Keys Using key-translation-map (minor update)

Added a new command for working with HTML. Emacs Lisp: Replace HTML Named Entities with Unicode Characters

Emacs: Hotkey to Open File Fast (updated code)

logitech mx master wireless mouse
“Logitech MX Master Wireless Mouse” amazon

A new mouse from Logitech, Logitech MX Master Wireless Mouse. This mouse has some quite interesting features that are not in any other mouse in history. See: Logitech MX Master Wireless Mouse

Emacs Lisp: Setup Mouse Click to Highlight Matching Words (updated)

on vi Keybinding vs Emacs Keybinding (repost)

Keyboard to a programer is like the sword of a knight. Here's a gallery from a junk yard. Microsoft Keyboards

Emacs: Manage Split Windows

Emacs: Effective Windows Management (updated)

Emacs: Full-Screen vs Multiple Window (updated)

Emacs: Add Custom Keys to Enhance Productivity (minor update)

Emacs: Using Number Pad Keys (on its own page)

Emacs: How to Set a Color Theme (minor update)

computer language char distribution 2015-04-18
Computer Languages Characters Frequency (now you can enter your own source code and get punctuation usage statistics)

discovered a new keylogging software. See: List of Keylogging Software (thanks to comment by Ran Viz)

Sacha Chua Emacs Hangouts

Sacha Chua, emacs expert and in particular org-mode expert, has been running regular emacs hangouts now. That is, in real time, video chat, with about 10 people. Sometimes it's Questions & Answers session, that you can ask emacs questions and get expert answer right off. Sometimes it's chat with a well-known emacs expert, sometimes just hanging out.

Check out her schedule on her blog. http://sachachua.com/blog/2015/04/emacs-hangout-2015-04-15-show-notes/. Subscribe her blog for updates, or follower her on twitter https://twitter.com/sachac

I also like to thank Sacha for helping me, being generous, and is a great woman with helpful and positive spirit.

Emacs: Delete Word Without Copying to Clipboard/kill-ring (minor update)

Emacs Lisp: Vector (updated, and on its own page)

David Pollak, Lift Scala Web Framework, Clojure

I would like to thank David Pollak. David has helped me tremendously in past few months.

David Pollak (aka dpp), is the author of the Lift (web framework) for Scala. It is the web framework for Scala, as Rails is to Ruby and Django for Python. Lift homepage at http://liftweb.net/

dpp is also a Clojure expert. Recently he created a project called visi-core, which is written in Clojure, connects to many big databases or number crunching engines such as Hadoop or Apache Spark, has its own simple language and web based interface. David paid me to help write test for it and learn Clojure the language. And from it I also learned a lot about parsers, hands-on.

visi-core is now open source. Github repo at https://github.com/visicorp/visi-core

dpp is truly a great guy. A master programer, and a truely great person, one-of-a-kind. He (his company) also sponsored the Typed Clojure Project

You can follow dpp at:

Emacs Lisp: Insert Brackets by Pair (updated code)

Emacs Lisp: Parsing Date Time (complete rewrite)

Emacs Lisp: Cycle Replace Space Hyphen Underscore (complete rewrite, and no dependencies.)

Emacs Lisp: Twitterfy (updated. Rid of lib dependencies.)

New command, for removing brackets. Emacs: Change/Remove Brackets () {} [] in Text

Emacs: Change/Remove Brackets () {} [] in Text (rewrote. No more dependency.)

𝔗𝔥𝔬𝔲 𝔖𝔥𝔞𝔩𝔱 𝔘𝔰𝔢 𝔈𝔪𝔞𝔠𝔰 𝔏𝔦𝔰𝔭 (rewrite code. No longer have any dependency.)

Emacs: isearch Current Word. Updated yesterday's code, so now the search will first highlight current word, as per isearch. Thanks to monhaike.

if you haven't already (defalias 'list-buffers 'ibuffer) Emacs: List Buffers (minor update)

Emacs: Toggle/Cycle Letter Case (major rewrite. Now, when called for the first time, the command cycle in a predicable order, not based on current word's case. So that, you can key this command by muscle memory to desired letter case.)

Emacs: Search & Highlight Words (major update)

new command. “xah-search-current-word”. See updated: Emacs: isearch Current Word

How to open a file with specific coding system? Open it normally, then call revert-buffer-with-coding-system

See updated: Emacs File/Character Encoding/Decoding FAQ

Emacs Lisp: Change Case by Title Convention (re-implement. Now no dependencies, and added features.)

Sorry, but more about mouse. Logitech created a new one, g300s. Logitech G300s Gaming Mouses

Emacs Lisp: Automatic Code Formatting, Auto Indentation

Automatic reformatting of emacs lisp and C/C++. See: https://github.com/tuhdo/semantic-refactor

I haven't tried it yet. See also his comment at Emacs Lisp: Automatic Code Formatting, Auto Indentation#comment-1948467493

For detail about this syntax issue, see:

Like it? or share

Past Articles by Date