<commit_before>#+TITLE: HTML layer
#+HTML_HEAD_EXTRA: <link rel="stylesheet" type="text/css" href="../../../css/readtheorg.css" />

[[file:img/html.png]]

* Table of Contents                                         :TOC_4_org:noexport:
 - [[Description][Description]]
   - [[Features][Features]]
 - [[Install][Install]]
 - [[Key Bindings][Key Bindings]]
   - [[Web mode][Web mode]]
   - [[CSS/SCSS][CSS/SCSS]]

* Description
This layer adds support for editing HTML and CSS.

** Features
- Editing HTML and CSS file using [[http://web-mode.org/][web-mode]]
- Support for Sass/Scss and Less files
- Generate HTML and CSS coding using [[https://github.com/smihica/emmet-mode][emmet-mode]]
- Tags navigation on key ~%~ using [[https://github.com/redguardtoo/evil-matchit][evil-matchit]]

* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =html= to the existing =dotspacemacs-configuration-layers= list in this
file.

* Key Bindings
** Web mode

| Key Binding | Description                                               |
|-------------+-----------------------------------------------------------|
| ~SPC m g p~ | quickly navigate CSS rules using =helm=                   |
| ~SPC m e h~ | highlight DOM errors                                      |
| ~SPC m g b~ | go to the beginning of current element                    |
| ~SPC m g c~ | go to the first child element                             |
| ~SPC m g p~ | go to the parent element                                  |
| ~SPC m g s~ | go to next sibling                                        |
| ~SPC m h p~ | show xpath of the current element                         |
| ~SPC m r c~ | clone the current element                                 |
| ~SPC m r d~ | delete the current element (does not delete the children) |
| ~SPC m r r~ | rename current element                                    |
| ~SPC m r w~ | wrap current element                                      |
| ~SPC m z~   | fold/unfold current element                               |
| ~%~         | evil-matchit keybinding to jump to closing tag            |

A transient-state is also defined, start it with ~SPC m .~ or ~, .~

| Key Binding | Description                                                    |
|-------------+----------------------------------------------------------------|
| ~?~         | Toggle full help                                               |
| ~c~         | clone current element                                          |
| ~d~         | delete (vanish) current element (does not delete the children) |
| ~D~         | delete current element and children                            |
| ~j~         | next element                                                   |
| ~J~ / ~gj~  | next sibling element                                           |
| ~h~         | parent element                                                 |
| ~k~         | previous element                                               |
| ~K~ / ~gk~  | previous sibling element                                       |
| ~l~         | first child element                                            |
| ~p~         | show xpath of current element                                  |
| ~q~         | leave the transient-state                                          |
| ~r~         | rename current element                                         |
| ~w~         | wrap current element                                           |

** CSS/SCSS

| Key Binding | Description                             |
|-------------+-----------------------------------------|
| ~SPC m g h~ | quickly navigate CSS rules using =helm= |
| ~SPC m z c~ | fold css statement to one line          |
| ~SPC m z o~ | unfold css statement to one line        |
<commit_msg>Mention support for Slim and Jade templates in the HTML layer docs<commit_after>#+TITLE: HTML layer
#+HTML_HEAD_EXTRA: <link rel="stylesheet" type="text/css" href="../../../css/readtheorg.css" />

[[file:img/html.png]]

* Table of Contents                                         :TOC_4_org:noexport:
 - [[Description][Description]]
   - [[Features][Features]]
 - [[Install][Install]]
 - [[Key Bindings][Key Bindings]]
   - [[Web mode][Web mode]]
   - [[CSS/SCSS][CSS/SCSS]]

* Description
This layer adds support for editing HTML and CSS.

** Features
- Editing HTML and CSS file using [[http://web-mode.org/][web-mode]]
- Support for Sass/Scss and Less files
- Generate HTML and CSS coding using [[https://github.com/smihica/emmet-mode][emmet-mode]]
- Tags navigation on key ~%~ using [[https://github.com/redguardtoo/evil-matchit][evil-matchit]]
- Support for editing Slim and Jade templates using [[https://github.com/slim-template/emacs-slim][slim-mode]]
  and [[https://github.com/brianc/jade-mode][jade-mode]]

* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =html= to the existing =dotspacemacs-configuration-layers= list in this
file.

* Key Bindings
** Web mode

| Key Binding | Description                                               |
|-------------+-----------------------------------------------------------|
| ~SPC m g p~ | quickly navigate CSS rules using =helm=                   |
| ~SPC m e h~ | highlight DOM errors                                      |
| ~SPC m g b~ | go to the beginning of current element                    |
| ~SPC m g c~ | go to the first child element                             |
| ~SPC m g p~ | go to the parent element                                  |
| ~SPC m g s~ | go to next sibling                                        |
| ~SPC m h p~ | show xpath of the current element                         |
| ~SPC m r c~ | clone the current element                                 |
| ~SPC m r d~ | delete the current element (does not delete the children) |
| ~SPC m r r~ | rename current element                                    |
| ~SPC m r w~ | wrap current element                                      |
| ~SPC m z~   | fold/unfold current element                               |
| ~%~         | evil-matchit keybinding to jump to closing tag            |

A transient-state is also defined, start it with ~SPC m .~ or ~, .~

| Key Binding | Description                                                    |
|-------------+----------------------------------------------------------------|
| ~?~         | Toggle full help                                               |
| ~c~         | clone current element                                          |
| ~d~         | delete (vanish) current element (does not delete the children) |
| ~D~         | delete current element and children                            |
| ~j~         | next element                                                   |
| ~J~ / ~gj~  | next sibling element                                           |
| ~h~         | parent element                                                 |
| ~k~         | previous element                                               |
| ~K~ / ~gk~  | previous sibling element                                       |
| ~l~         | first child element                                            |
| ~p~         | show xpath of current element                                  |
| ~q~         | leave the transient-state                                          |
| ~r~         | rename current element                                         |
| ~w~         | wrap current element                                           |

** CSS/SCSS

| Key Binding | Description                             |
|-------------+-----------------------------------------|
| ~SPC m g h~ | quickly navigate CSS rules using =helm= |
| ~SPC m z c~ | fold css statement to one line          |
| ~SPC m z o~ | unfold css statement to one line        |

{'fraction_non_alphanumeric': 0.1473174461577673, 'fraction_numerical': 0.0002548744743213967, 'mean_word_length': 1.0384415584415585, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 6, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 53, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2106702', 'n_tokens_mistral': 1853, 'n_tokens_neox': 1793, 'n_words': 656}