Xah Emacs Blog Archive 2022-01
- Elisp: String Functions add
string-pad
,string-lines
major rework on emacs lisp sequences datatype
updates and new
- now better organization of the navigation panel. Elisp: How to Write a Command
- ๐ Elisp: File Path Functions
- Elisp: Buffer Functions
- Elisp: Cut Copy Paste, kill-ring
- Elisp: How to Write a Command
highlight: Why Common Lisp Sucks, and Xah Lee is a Troll https://youtu.be/Oqt9aSw0Qaw?t=1944 from Xah Talk Show 2022-11-28 Why Common Lisp Sucks, and Xah Lee is a Troll, lispm
updates and new
the after 10 years, emacs finally have redo.
- on vi Keybinding vs Emacs Keybinding
- vim, 3 Decades Pile of History
- Vim: Remap Escape Key
- Emacs Modernization: Meta Key Notation
- Emacs Modernization: Simple Changes Emacs Should Adopt
- GNU Emacs and XEmacs Schism (2001)
- Emergency vim
- Lisp Celebrities and Computing History from โWorse Is Betterโ
- Emacs Repetitive Strain Injury, My Experience
- GNU Emacs and XEmacs Schism (2001)
updates and new. string and buffer.
2022-10-31 Emacs: Xah Fly Keys ๐ฆ More major internal change. No user visible change.
Internal implementation change. New function xah-fly-define-keys
. This is called by xah-fly-keys-set-layout
. Basically, command mode keys and leader keys are set by this function. It was several code blocks calling xah-fly--define-keys
. Now they all moved into this new function, so that xah-fly-keys-set-layout
no longer has to reload whole file. It now just call the new function.
- code update Emacs: Format JavaScript Code ๐
updates and new.
More major internal change 2022-10-26. No user visible change.
- removed all explicitly named keymaps that are used in xah-fly-leader-key-map. e.g. xah-fly-t-key-map (qwerty k, of Space k sequence) is gone, and its keymap is just part of definition of xah-fly-leader-key-map with a sequence of keys. Much simpler.
- removed the redundant binding ("1" . xah-extend-selection) ("2" . xah-select-line) use key 7 and 8 instead.
- More major internal change. No user visible change.
- xah-fly--key-char is now gone. replaced by xah-fly--convert-kbd-str. the latter converts any `kbd' argument, instead of a single char. xah-fly--define-keys is changed to use the new.
- Replaced all keymap names from xah-fly-Rp2p1-key-map to xah-fly-c-key-map. The former (finger based) naming is hard to understand. (The letter based naming is based on dvorak layout.) (also, in the future, these keymap vars will be removed, instead, relying on define-key to auto generate them.)
- Changed the implementation of the qwerty (space e) keymap to rely on auto-generated by define-key.
- added a function
alist-get
Elisp: Association List
xah-fly-keys major internal change. xah-fly-layouts
- New. var xah-fly-layouts holds a list of layouts. Supported layouts can be programatically listed.
- function xah-fly-keys-set-layout major change. No longer support M-x customize. Reason: supporting it makes the code much more complex.
- var xah-fly-key-current-layout changed accordingly.
- renamed xah-fly--current-layout-kmap to xah-fly--key-convert-table
- here is some detail. the layout was variables, e.g. โข xah--dvorak-to-azerty-kmap โข xah--dvorak-to-azerty-be-kmap โข xah--dvorak-to-beopy-kmap etc. now these variables are string keys of xah-fly-layouts, with prefx xah--dvorak-to- dropped and suffix -kmap dropped, so the names are just azerty, azerty-be, etc. value remain the same.
- starting to phase out using symbol for layout names. Symbol pollutes symbol table. and string is more intuitive, universal. e.g. (xah-fly-keys-set-layout 'qwerty) should be (xah-fly-keys-set-layout "qwerty")
some update to doc. (not related to the change above though.)
updates.
- Emacs: Undo Saga
- Emacs Undo and Emacs Cult Problem (2011)
- Elisp: Enable Undo in Buffer
- Emacs Init: Standard Copy Cut Paste Keys
- Emacs Keys: Add Custom Keys
emacs 28 new feature, redo.
New command undo-redo
.
This command is typically known as redo.
(setq undo-no-redo t)
** New command
undo-redo
. It undoes previous undo commands, but doesn't record itself as an undoable command. It is bound to 'C-?' and 'C-M-_', the first binding works well in graphical mode, and the second one is easy to hit on tty.For full conventional undo/redo behavior, you can also customize the user option undo-no-redo to t.
massive updates again.
the emacs key panel, e.g. at Emacs Keys: Define Key, essays about keybinding that's not practical emacs use are moved to Emacs Misc Index
misc other updates:
more update. starting to make my tutorial more book-like, suitable for absolute beginners.
massive updates.
lots updates. now, pages that's just a custom emacs lisp command has a rocket ๐ indicator
Emacs, Work with Brackets
- Emacs Init: Highlight Brackets
- Emacs Init: Auto Insert Closing Bracket (electric-pair-mode)
- Emacs: Insert Brackets by Pair ๐
- Emacs: Delete Brackets by Pair ๐
- Emacs: Move Cursor to Bracket ๐
- Emacs: Jump to Matching Bracket ๐
- Emacs: Change Brackets ๐
- Emacs: Navigate Lisp Code as Tree
- Emacs: Select Text Between Quotes ๐
- Emacs: Xah Elisp Mode ๐ฆ
massive updates. updated many screenshots that's 15 years old, and other updates, move section to new page, re-org, new nav box of related articles, and many rewrites etc. this more review and edit to do, but if i continue, the list wont stop. so, webfeeding it now.
- Emacs: Select Text (mark and region)
- Emacs: Comment, Uncomment
- Emacs Calculator
- Emacs Calendar
- Emacs: Split Window
- Emacs Basics Tips
- Fun with Emacs
- Emacs: View Info Page
- Emacs: Insert Tab or Newline
- Emacs: Newline Convention
- Emacs: Change a File's Line Endings
- Emacs: Convert File Line Ending ๐
- Emacs: Copy Current Line If No Selection ๐
- Emacs: Copy Paste, kill-ring
- Emacs: Copy to Register
- Emacs: Copy to Register 1 ๐
- Emacs: Copy Rectangle Region to kill-ring ๐
- Emacs Init: Standard Copy Cut Paste Keys
am on lbry/odysee. follow me there.
Xah Talk Show 2022-09-28 emacs lisp. extract html links, insert to each page https://odysee.com/@XahLee:b/emacs-lisp-coding.-extract-html-links,:a
new and updates.
code updates
All keyboard layout diagram changed. instead of button, now radio box, indicating current layout.
misc new and updates
Xah Fly Keys update for colemak dh layout
Emacs: Xah Fly Keys ๐ฆ update for colemak dh layout.
fix and new keymaps for the Colemak DH layout variations. Now with more accurate name for the Colemak DH variations: dhm, dhk, and dhk with angle-mode.
For users, change your layout to one of:
"colemak-dhm"
"colemak-dhm-angle"
"colemak-dhk"
the following layout names are removed:
- colemak-mod-dh (use colemak-dhk instead)
- colemak-mod-dh-new (use colemak-dhm-angle instead)
internal:
- new: xah--dvorak-to-colemak-dhm-kmap is the offical Colemak DH (aka DHm) layout.
- new: xah--dvorak-to-colemak-dhm-angle-kmap is the Colemak DHm layout with angle-mode.
- new: xah--dvorak-to-colemak-dhk-kmap is the Colemak DHk layout.
- old: xah--dvorak-to-colemak-mod-dh-kmap is now removed. (it was for Colemak DHk)
- old: xah--dvorak-to-colemak-mod-dh-new-kmap is now removed. (it was for Colemak DHm angle mode)
xtodo
new discovery in
Emacs 28 (Released 2022-04)
. insert-char
xtodo
xah-cite
xah-open-file-from-clipboard
xah-open-file-at-cursor
Idiotic url parser in emacs lisp. url-generic-parse-url
. Elaborate overly complex code, uses common lisp lib, and, doesn't parse query string part.
xtodo work in progress
updates and new
linux emacs, need help test xah-open-in-external-app โข and xah-show-in-desktop
can any help test this new version on linux? (the code has already been checked-in in Emacs: Xah Fly Keys ๐ฆ )
from emiltoacs https://github.com/xahlee/xah-fly-keys/pull/149
The linux branch of
xah-open-in-external-app
andxah-show-in-desktop
that uses xdg-open starts another child process to open its parameters with the appropriate command then it quits however it makes emacs kill the subprocess as soon as xdg-open has finished therefore the files opened externally are also instantaneously killed.
change:
latest:
updated or new page
- Emacs: Evaluate Elisp Code
- Emacs: Messages Buffer
- Elisp: Comment
- Elisp: Print, Output
- Elisp: String
- Elisp: Format String
- new Elisp: Lambda
updated:
emacs bug. if u have a lang with comment syntax such as
/โฎ/ comment /โฎ* comment */ (โฎ* comment *)
and cursor is on after the 1st char in the line, then you do
(nth 4 (syntax-ppss))
it returns nil.
however, if cursor is at
/* comment *โฎ/ (* comment *โฎ)
it return true.
- here's the story.
- in Xah Fly Keys , there is this command
- xah-delete-backward-char-or-bracket-text.
- however, when in a programing language with this comment syntax
(* comment *)โฎ
- it skips the comment and delet some other text in buffer.
- to fix this, took 5 hours today.
major re-organization Xah Emacs Tutorial
now
- Lisp Basics โ lisp language stuff
- Practical Emacs Lisp โ emacs related lisp stuff
- Emacs Lisp Examples
- Emacs Lisp How to Write Major Mode
more updates, minor or major:
- Elisp: Quick Start
- Elisp: Boolean (true false nil)
- Elisp: Convert Number, String
- Elisp: Format String
and lots other pages.
massive reorg
- xtodo review Elisp: Keyword Completion
all code update
- new url Emacs: Xah Fly Keys ๐ฆ
new version of xah emacs tutorial is generated. buy it! Sending update in this week.
updates:
new and updates
- xah talk show 2022-06-08 emacs lisp tutorial, write command to change space to newline
- Emacs: Spaces to New Lines ๐
other updates
- new Emacs: How to Create Your Own Theme
- updated Emacs: Switch Buffer
- 2022-06-07 xtodo cperl mode freezes emacs 28.1 Emacs: perl-mode vs cperl-mode
updates
updates
updated.
Xah Talk Show 2022-05-21 Emacs Lisp Coding, Bionic Reading Command
updates
great to know. powershell does not choke by emacs Formfeed char
new and updates
- Elisp: Get System Info. minor update
xah talk show 2022-05-12 emacs, most efficient ways to open file
and updated:
Xah Talk Show 2022-05-11 How I Got into LISP, Should You Learn Wolfram Language, Math Plane Curves
updates
xtodo
- emacs 28
so-long-mode
. fantastic. (also needs to fix all my pages mentioning long lines problem.)
Famous Emacs Users new addition.
updates.
xah-fly-keys now on nonGnu ELPA. Emacs: Xah Fly Keys ๐ฆ
14 years old bug, now fixed in emacs 29. describe-mode. thanks to Lars Ingebrigtsen
- emacs bug 575, add link to info doc in describe mode
- emacs bug 2473, usability issues on emacs's describe-mode
following xtodo todo, clean up the index mess:
Richard Stallman, High-tech Prankster new photos. from [Don Hopkins]โฎhttps://en.wikipedia.org/wiki/Don_Hopkinsโฏ
- xtodo work in progress Emacs 28 (Released 2022-04)
emacs 28 added the 'emoji
group of characters.
emacs 28 now support flex match for name completion for all commands that use minibuffer prompt. major update:
- new page Emacs Version History
emac 28, am extremely IMPRESSED. Best upgrade, most user level features in past 10 years, and the โNEWSโ file is now READABLE. eg emacs now has proper undo/redo. All packages trying to fix it in past 20 years are done for. Review/livestream in coming weeks.
xah talk show 2022-03-26 write a search engine for my site. emacs lisp + JavaScript coding
xah lee emacs packages on melpa stats xtodo need to get other stat to that page.
Major update. Lots new pages. some parts are still work in progress xtodo
minor updates.
- updated Emacs Init: Mouse Wheel Config
Emacs: Xah Find Replace (xah-find.el) ๐ฆ
now much faster
3 new functions.
xah-dired-rotate-img-180
xah-dired-rotate-img-left
xah-dired-rotate-img-right
update or new
Emacs: Xah HTML Mode ๐ฆ
new video
emacs bug 1111, fixed after 13 years
misc updates
Major rework on emacs lisp doc popup. Clear cache and reload to check. Shift+Ctrl+r in chrome. โฅ option+โ command+e in safari.
major rewrite:
minor updates:
Elisp: Association List
more update.
Emacs: Convert File Line Ending ๐
more efficient code
updates
Elisp: Get Text Block ๐
improved code.
xah talk show 2022-01-20 emacs lisp coding plus tutorial, xah-add-space-after-comma
Emacs: Xah Fly Keys Customization Major update. Still working on it.
xah packages. Added lots features. Minor and major updates. Buy them.
Download Emacs for Windows/Mac
added download emacs for Android.
thanks to Infu.
Emacs: Xah Fly Keys ๐ฆ . Added neo2 layout to the svg diagram. Thanks to p1umps.