Lugaru's Epsilon
Programmer's
Editor

Context:
Epsilon User's Manual and Reference
   . . .
   Command Reference
      abort
      about-epsilon
      align-region
      . . .
      zoom-window
   Variable Reference
      . . .
      html-display-nesting-width
      html-indent
      html-indenting-rules
      html-no-indent-elements
      html-other-coloring
      . . .
   Changing Epsilon
   . . .

Previous   Up    Next
html-indent  Variable Reference   html-no-indent-elements


Epsilon User's Manual and Reference > Variable Reference >

html-indenting-rules: preference variable

Default value: 0xffffff

This variable controls whether Epsilon uses smart indenting for HTML or XML (or scripting embedded within it), or just copies indentation from the previous line. Bits in the variable enable smart indenting for various languages, as shown below.

 Scripting Language  Smart Indent
 JavaScript   0x1
 VBScript   0x2
 PHP   0x4
 Python   0x8
 CSS  0x10

These bits enable indenting in certain contexts:

0x100
permits indenting inside tags.

0x200
permits indenting for text lines that don't start with a tag.

0x400
permit indenting the first line of a script block, but only when its opening < is indented. When the < is at the left margin, the script will start there too.

0x800
permit indenting the first line of a script block unconditionally, overriding 0x400.

Also see the html-auto-indent and xml-auto-indent variables, which control whether and how Epsilon indents when you press <Enter> (not <Tab> or other keys that indent).

By default smart indenting is enabled in all cases.

When there are multiple start tags on a single line, Epsilon normally indents the next line by one level no matter how many start tags appear. Turning off the 0x80 bit tells Epsilon to indent more in such cases, as if the start tags had appeared on separate lines.

The 0x8000 bit controls how Epsilon indents when the attributes of a tag continue onto the next line. This bit makes Epsilon align the equal signs following each attribute. Turn it off if you want Epsilon to align the attribute names instead.

When you press certain keys like {, :, #, or a right delimiter, Epsilon normally reindents that line when in scripting. These bits in html-indenting-rules enable such reindenting:

 Scripting Language  Enable Reindent
 JavaScript   0x10000
 VBScript   0x20000
 PHP   0x40000
 Python   0x80000
 CSS  0x100000

Note that you can type expressions at the set-variable prompt, like varname | 0x100 to set a bit in the variable varname you're setting, or varname & ~0x100 to turn it off.

More info:

HTML/XML/CSS Modes



Previous   Up    Next
html-indent  Variable Reference   html-no-indent-elements


Lugaru Copyright (C) 1984, 2012 Lugaru Software Ltd. All Rights Reserved.