setup LaTeX in helix

This commit is contained in:
Aria Nolan 2023-10-13 11:53:42 -04:00
parent 619844e03d
commit 9fca885be4
5 changed files with 88 additions and 75 deletions

View file

@ -1,60 +1,62 @@
{ config, pkgs, inputs, ... }:
{ {
config,
pkgs,
inputs,
...
}: {
imports = [
./languages.nix
];
imports = [ programs.helix = {
./languages.nix enable = true;
]; # package = inputs.helix.packages."x86_64-linux".default;
programs.helix = { package = inputs.helix.packages.${pkgs.system}.default.overrideAttrs (self: {
enable = true; makeWrapperArgs = with pkgs;
# package = inputs.helix.packages."x86_64-linux".default; self.makeWrapperArgs
or []
++ [
"--suffix"
"PATH"
":"
(lib.makeBinPath [
clang-tools
marksman
nil
nodePackages.bash-language-server
# nodePackages.vscode-css-languageserver-bin
# nodePackages.vscode-langservers-extracted
shellcheck
])
];
});
package = inputs.helix.packages.${pkgs.system}.default.overrideAttrs (self: { settings = {
makeWrapperArgs = with pkgs; theme = "rose_pine_moon";
self.makeWrapperArgs editor = {
or [] line-number = "relative";
++ [ lsp.display-messages = true;
"--suffix" scrolloff = 5;
"PATH" middle-click-paste = false;
":" cursorline = true;
(lib.makeBinPath [ auto-format = false;
clang-tools idle-timeout = 400;
marksman color-modes = true;
nil soft-wrap.enable = true;
nodePackages.bash-language-server whitespace = {
nodePackages.vscode-css-languageserver-bin render = {
nodePackages.vscode-langservers-extracted space = "none";
shellcheck tab = "none";
]) newline = "none";
]; };
}); };
indent-guides = {
settings = { render = true;
theme = "rose_pine_moon"; character = "";
editor = { rainbow-option = "dim";
line-number = "relative"; };
lsp.display-messages = true; };
scrolloff = 5; };
middle-click-paste = false; };
cursorline = true;
auto-format = false;
idle-timeout = 400;
color-modes = true;
soft-wrap.enable = true;
whitespace = {
render = {
space = "none";
tab = "none";
newline = "none";
};
};
indent-guides = {
render = true;
character = "";
rainbow-option = "dim";
};
};
};
};
} }

View file

@ -1,11 +1,13 @@
{ pkgs, lib, ... }:
{ {
pkgs,
lib,
...
}: {
programs.helix.languages = { programs.helix.languages = {
language = [ language = [
{ {
name = "bash"; name = "bash";
auto-format = true; auto-format = false;
formatter = { formatter = {
command = "${pkgs.shfmt}/bin/shfmt"; command = "${pkgs.shfmt}/bin/shfmt";
args = ["-i" "2"]; args = ["-i" "2"];
@ -28,13 +30,17 @@
config.nil.formatting.command = ["${lib.getExe pkgs.alejandra}" "-q"]; config.nil.formatting.command = ["${lib.getExe pkgs.alejandra}" "-q"];
}; };
vscode-css-language-server = { texlab = {
command = "${pkgs.nodePackages.vscode-css-languageserver-bin}/bin/css-languageserver"; command = "${pkgs.texlab}/bin/texlab";
args = ["--stdio"]; config.texlab.executable = "${pkgs.tectonic}/bin/tectonic";
config = { config.texlab.build.onSave = true;
provideFormatter = true; config.texlab.args = [
css.validate.enable = true; "-X"
}; "compile"
"%f"
"--keep-logs"
"--keep-intermediates"
];
}; };
}; };
}; };

View file

@ -7,11 +7,13 @@
stateVersion = "23.11"; stateVersion = "23.11";
sessionVariables = { sessionVariables = {
EDITOR = "hx"; EDITOR = "hx";
BAT_THEME = "ansi";
}; };
packages = with pkgs; [ packages = with pkgs; [
wineWowPackages.unstable wineWowPackages.unstable
eza eza
bat bat
pandoc
]; ];
}; };

View file

@ -3,13 +3,16 @@
programs.bash = { programs.bash = {
enable = true; enable = true;
enableCompletion = true; enableCompletion = true;
enableVteIntegration = true;
bashrcExtra = '' bashrcExtra = ''
if [ -d "$HOME/.local/bin" ] ; then if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH" PATH="$HOME/.local/bin:$PATH"
fi fi
# DotNet
PATH=$PATH:~/.dotnet
export DOTNET_ROOT=~/.dotnet
''; # this should be changed to use home.sessionVariables ''; # this should be changed to use home.sessionVariables
profileExtra = '' profileExtra = ''

View file

@ -28,15 +28,15 @@
}; };
} }
{ # {
name = "zsh-bat"; # name = "zsh-bat";
src = pkgs.fetchFromGitHub { # src = pkgs.fetchFromGitHub {
owner = "fdellwing"; # owner = "fdellwing";
repo = "zsh-bat"; # repo = "zsh-bat";
rev = "d7d5df4f6c7dd380e49b47e4da840226a828968a"; # rev = "d7d5df4f6c7dd380e49b47e4da840226a828968a";
sha256 = "4DQ/qSznM4A9IyM6W0bncHUa4jTIAdBxL16YJgMccHE="; # sha256 = "4DQ/qSznM4A9IyM6W0bncHUa4jTIAdBxL16YJgMccHE=";
}; # };
} # }
{ {
name = "z.lua"; name = "z.lua";