Emacs HTML Tips

Buy Xah Emacs Tutorial. Master emacs benefits for life.
, , …,

This page is a tutorial on working with HTML.

Which HTML Mode To Use?

html-mode for Simple HTML (in emacs)

When you open a file ending in “html”, it'll automatically open in html-mode. This is a basic HTML mode. It is writen by SGML/XML expert James Clark, in 1990s.

nxml-mode for Valid XHTML/XML (in emacs)

If your code is valid XML, you should use nxml-mode. “nxml-mode” is a mode for editing XML documents, also written by SGML/XML expert James Clark, in 2000s. It has the feature of real-time XML validation.

nxml-mode comes with emacs 23.1.1, but is not the default mode loaded when you open a file ending in “.xml”. (This is fixed in 23.2.x) To load “nxml-mode”, just type 【Alt+x nxml-mode】. To set emacs to always use nxml when files ending in “.xml” is opened, see: Emacs: How to Associate a File with a Major Mode?, or simply set a alias like this: (defalias 'xml-mode 'nxml-mode). 〔➤ Emacs: Defining Alias to Increase Productivity

Mixed XHTML/XML/CSS/JavaScript/PHP

For HTML mixed with {CSS, JavaScript, PHP, ASP, JSP}, you have the following choices:

About This Tutorial

The following tips are about using html-mode. However, this page also gives you several custom commands written in elisp. These elisp commands can be useful regardless which HTML/XML mode you use.

Inserting HTML Tags with Emacs

See: Inserting HTML Tags with Emacs.

Deleting Tags and Move By Tags

How to delete a tag?

Call sgml-delete-tagCtrl+c Ctrl+d】. This will delete both start/end tags where the cursor is on.

WARNING: if your HTML tags do not always have ending tags, it might delete the wrong tag.

How to make the cursor jump to ending tag?

Call sgml-skip-tag-forwardCtrl+c Ctrl+f】.

Call sgml-skip-tag-backwardCtrl+c Ctrl+b】.

See also: Emacs: Commands to Move Cursor by Brackets, Quotes.

Others

How to replace & to &?

See: Emacs Lisp: Command to Replace HTML Entities with Unicode Characters

How to preview in a browser?

Call browse-url-of-bufferCtrl+c Ctrl+v】.

Call sgml-tags-invisibleCtrl+c Tab ↹】, which will hide all the tags. Call again to show tags.

Compact CSS Source Code

You can define a command to compact CSS code. See: Emacs Lisp: CSS Compressor.

Working with Color Values

emacs hexcode highlight

See: Emacs: Working with CSS Color Values.

More Tips

How to view the image in a image tag?

Suppose this is your text:

<img src="img/emacs_logo.png">

Move your curser on the file path, then call ffap. (find-file-at-point) You can also create a shortcut such as F8 key for this.

How to view image thumbnails in a directory?

emacs tumme
emacs “tumme” command showing image thumbnails.

See: Emacs: View Image Thumbnails

How to open the current directory in OS's desktop?

See: Emacs Lisp: Open File in External App.

Like it?
Buy Xah Emacs Tutorial
or share
blog comments powered by Disqus