nix-mode
- Description
- Major mode for editing .nix files
- Latest
- nix-mode-1.5.0.0.20230421.153655.tar (.sig), 2024-Mar-31, 190 KiB
- Maintainer
- Matthew Bauer <mjbauer95@gmail.com>
- Atom feed
- nix-mode.xml
- Website
- https://github.com/NixOS/nix-mode
- Browse ELPA's repository
- CGit or Gitweb
- Badge
To install this package from Emacs, use package-install
or list-packages
.
Full description
A major mode for editing Nix expressions (.nix files). See the Nix manual for more information available at https://nixos.org/nix/manual/.
Old versions
nix-mode-1.5.0.0.20230329.144828.tar.lz | 2023-Mar-29 | 39.9 KiB |
nix-mode-1.5.0.0.20230317.205614.tar.lz | 2023-Mar-18 | 39.8 KiB |
nix-mode-1.5.0.0.20230210.94010.tar.lz | 2023-Feb-10 | 39.7 KiB |
nix-mode-1.5.0.0.20230112.124501.tar.lz | 2023-Jan-12 | 39.6 KiB |
nix-mode-1.5.0.0.20221201.202846.tar.lz | 2022-Dec-02 | 39.7 KiB |
nix-mode-1.4.4.0.20221108.181757.tar.lz | 2022-Nov-09 | 39.7 KiB |
nix-mode-1.4.4.0.20221031.110139.tar.lz | 2022-Oct-31 | 39.7 KiB |
nix-mode-1.4.4.0.20221030.182946.tar.lz | 2022-Oct-31 | 39.7 KiB |
nix-mode-1.4.4.0.20220830.230247.tar.lz | 2022-Aug-31 | 39.6 KiB |
nix-mode-1.4.4.0.20220121.112325.tar.lz | 2022-Jan-29 | 39.2 KiB |
News
Changelog
Unreleased (1.6.0)
- Introduce nix-store-path-omit-self customization option.
1.5.0
- Removed json-mode dependency, using js instead.
- Compatibility with Emacs 28+.
- Add nix-flake commands, based on magit-section.
- Add nix-store-show-log command.
- Other various fixes.
1.4.5
- Fixed completion support in nix-repl-mode for Nix 2.
1.4.4
Changes
- Fix a bug causing Nix-based completions to throw an error
1.4.3
Changes
- Better documentation for nix-prettify-mode
- Fixes for nix-eshell.el
- Use
NIX_GET_COMPLETIONS
if Nix 3.0 is installed - Add flake.nix
1.4.2
Changes
- Fixed build scripts to work with newer org-mode.
- Invoke smie indent function locally, instead of globally.
- Indent correctly when encountering preceding angle bracket paths.
- Require Emacs 25.
- Add json-mode dependency.
1.4.1
Changes
Made smie-setup optional. Some really large files can take a little bit to load. You can smie by setting nix-mode-use-smie to nil. It is still enabled by default.
Tweaks to how smie works.
1.4.0
Changes
Introduced SMIE indentation mode. It is now the default. The old behavior can be restored by setting ‘nix-indent-function’ to indent-relative.
Added the ‘nix-indent-region’ function to indent blocks of Nix expressions. This can be used as a dumb formatter.
Better testing has been added to make sure we handle more cases of Nix indentation style.
1.3.0
Added manual.
Create CHANGELOG.md
New files
- nix.el: customization settings for nix installation
1.2.1
Changes
- fix byte-compile error
1.2.0
New files
- nix-format.el: format Nix code using nixfmt
- nix-mode-mmm.el: treate multiline strings as sh-script within nix-mode
- nix-repl.el: run nix-repl within Emacs
- nix-prettify-mode.el: shorten store paths to /nix/store/…-foo-0.1
- nix-shell.el: run nix-shell within Emacs
- nix-company.el: complete Nix expressions through company
Changes
All of these reflect nix-mode.el and what's been changed from the original nix-mode.el.
- add some simple tests for nix-mode
- handle antiquotes within Nix expressions better
- handle multiline string better
- fixes some edge cases for ''${ (escaped antiquote)
- indent Nix code based on Nix-specific rules (not just indent-relative)
- enforce Nix spacing style rules in nix-mode (2 spaces, no tabs)
Bug fixes
This version fixes the following bugs in the original Nix version:
- fixes the issue where /* by a multiline string is interpreted as a comment (NixOS/nix#662)
- fixes antiquote highlighting within double quotes like x="${asdf}" (NixOS/nix#1055)
- fixes an issue in org-mode fontification of nix files (NixOS/nix#1040)
- Also, should these issues should be closable: NixOS/nix#1419, NixOS/nix#1086, NixOS/nix#1054
1.0
Original nix-mode from https://github.com/NixOS/nix/. See that repository for older changelog.