You are viewing the documentation for the develop branch. The documentation for the release version is here .

Table of Contents

yang layer

Table of ContentsClose

1. Description

This layer provides support for the YANG file format.

1.1. Features:

  • Syntax highlighting
  • Syntax checking via flycheck

2. Install

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

(setq-default dotspacemacs-configuration-layers '(yang))

3. Syntax checking with flycheck

Flycheck is used to check the yang syntax utilizing pyang which needs to be installed on your system. Documentation for pyang can be found at the pyang repository, and can be installed using python packaging mechanisms

3.1. Configuration

By default the syntax checking is done according to pyang --lint which uses rules outlined in RFC 6020. To use a different set of rules set the yang-pyang-rules variable. The valid values at the time of writing were:

  • mef Validate the module(s) according to MEF rules.
  • ietf Validate the module(s) according to IETF rules.
  • bbf Validate the module(s) according to BBF rules.
  • ieee Validate the module(s) according to IEEE rules.
  • lint Validate the module(s) according to RFC 6087 rules.
(setq-default dotspacemacs-configuration-layers
              '((yang :variables yang-pyang-rules "ietf")))

To allow further customization one can set the yang-pyang-extra-args variable to a string that will be passed directly to the pyang command.

(setq-default dotspacemacs-configuration-layers
              '((yang :variables yang-pyang-extra-args "--max-line-length=69")))

Author: root

Created: 2021-09-29 Wed 20:45