Add nix lang support to v4

This commit is contained in:
Sameer Rahmani 2024-03-26 12:59:58 +00:00
parent 3bbd095f75
commit db5cee29d8
Signed by: lxsameer
GPG Key ID: 8741FACBF412FFA5
3 changed files with 41 additions and 8 deletions

View File

@ -29,18 +29,12 @@
(require 'fg42/langs/verilog) (require 'fg42/langs/verilog)
(require 'fg42/langs/python) (require 'fg42/langs/python)
(require 'fg42/langs/elisp) (require 'fg42/langs/elisp)
(require 'fg42/langs/nix)
(require 'fg42/wm)) (require 'fg42/wm))
(require 'server) (require 'server)
(require 'fg42/modeline) (require 'fg42/modeline)
;; (require 'fg42/utils)
;; (require 'fg42/modeline)
;; (require 'fg42/cubes/modeline)
;; (require 'fg42/themes)
;; (require 'fg42/project)
(defvar fg42/font '("Fira Mono" 12) (defvar fg42/font '("Fira Mono" 12)
"Font name and size to be used with FG42. (Default (\"Fira Mono\" 12).") "Font name and size to be used with FG42. (Default (\"Fira Mono\" 12).")

36
lisp/fg42/langs/nix.el Normal file
View File

@ -0,0 +1,36 @@
;;; FG42 --- The mighty editor for the emacsians -*- lexical-binding: t; -*-
;;
;; Copyright (c) 2010-2024 Sameer Rahmani & Contributors
;;
;; Author: Sameer Rahmani <lxsameer@gnu.org>
;; URL: https://devheroes.codes/FG42/FG42
;; Version: 3.0.0
;;
;; This program is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;;
;; This program is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;;
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;
;;; Commentary:
;;; Code:
(eval-when-compile
(require 'fpkg))
(use! nix-mode
"Nix language support for Emacs."
:mode "\\.nix\\'"
:hook
(nix-mode . eglot-ensure)
(nix-mode . company-mode)
(nix-mode . flyspell-prog-mode))
(provide 'fg42/langs/nix)
;;; nix.el ends here

View File

@ -90,8 +90,11 @@ let
python3Packages.flake8 python3Packages.flake8
]) ++ (lib.optional supportVerilog [ ]) ++ (lib.optional supportVerilog [
svls svls
]) ++ (lib.optional (supportVerilog && stdenv.isLinux) [
# SystemC is required by verilator that at the
# moment is only available on Linux
verilator verilator
]) ++ (lib.optional supportWM [ ]) ++ (lib.optional (supportWM && stdenv.isLinux) [
# Window manager supports works on Linux only # Window manager supports works on Linux only
xorg.xhost xorg.xhost
]); ]);