Docbook Editor Configuration: Difference between revisions
imported>Fadenb No edit summary |
imported>Fadenb m →For Emacs: syntaxhighlight |
||
Line 3: | Line 3: | ||
The following creates an Emacs with a custom module, which configures nXML for the NixOS / Nixpkgs docbook codebase: | The following creates an Emacs with a custom module, which configures nXML for the NixOS / Nixpkgs docbook codebase: | ||
<syntaxhighlight lang="nix"> | |||
let | let | ||
pkgs = import <nixpkgs> {}; | pkgs = import <nixpkgs> {}; | ||
Line 27: | Line 28: | ||
}) | }) | ||
]) | ]) | ||
</syntaxhighlight> |
Revision as of 09:13, 27 August 2017
For Emacs
The following creates an Emacs with a custom module, which configures nXML for the NixOS / Nixpkgs docbook codebase:
let
pkgs = import <nixpkgs> {};
inherit (pkgs) emacsPackagesNg docbook5 writeText;
schemas = writeText "schemas.xml" ''
<locatingRules xmlns="http://thaiopensource.com/ns/locating-rules/1.0">
<documentElement localName="section" typeId="DocBook"/>
<documentElement localName="chapter" typeId="DocBook"/>
<documentElement localName="article" typeId="DocBook"/>
<documentElement localName="book" typeId="DocBook"/>
<typeId id="DocBook" uri="${docbook5}/xml/rng/docbook/docbookxi.rnc" />
</locatingRules>
'';
in emacsPackagesNg.emacsWithPackages (epkgs: [
(emacsPackagesNg.trivialBuild {
pname = "nix-docbook-mode";
version = "1970-01-01";
src = writeText "default.el" ''
(eval-after-load 'rng-loc
'(add-to-list 'rng-schema-locating-files "${schemas}"))
'';
})
])