Zen Coding
Encyclopedia
Zen Coding is a set of plug-ins for text editors that allow for high-speed coding and editing in HTML
HTML
HyperText Markup Language is the predominant markup language for web pages. HTML elements are the basic building-blocks of webpages....

, XML
XML
Extensible Markup Language is a set of rules for encoding documents in machine-readable form. It is defined in the XML 1.0 Specification produced by the W3C, and several other related specifications, all gratis open standards....

, XSL
Extensible Stylesheet Language
In computing, the term Extensible Stylesheet Language is used to refer to a family oflanguages used to transform and render XML documents....

, and other structured code formats. The project was created by Sergey Chikuyonok in 2009 and continues to be actively developed by Chikuyonok and Zen Coding users. The tools have been incorporated into a number of high-profile text editor
Text editor
A text editor is a type of program used for editing plain text files.Text editors are often provided with operating systems or software development packages, and can be used to change configuration files and programming language source code....

s, some plug-ins developed by the Zen Coding team and others implemented independently. However, Zen Coding is primarily independent from any text editor, as the engine works directly with text rather than with any particular software.

Zen Coding is an open source code distributed under an MIT License
MIT License
The MIT License is a free software license originating at the Massachusetts Institute of Technology . It is a permissive license, meaning that it permits reuse within proprietary software provided all copies of the licensed software include a copy of the MIT License terms...

.

Expand abbreviations

Zen Coding uses a specific syntax in order to expand small snippets of code, similar to CSS selectors, into full-fledged HTML code. For example, the sequence

div#page>div.logo+ul#navigation>li*5>a

expands into





The expand abbreviations function includes several other complex functions, such as wrapping a section of code with expanded code.

Tag balancing

The HTML Pair Matcher allows users to locate the matching open/close tag for the tag at the current cursor position. Unlike other HTML pair matchers, Zen Coding searches from the cursors current position rather than scanning the document from the beginning.

Text editors

The following text editor plug-ins were developed by the Zen Coding team