mirror of
https://github.com/kenryuS/report-temp.git
synced 2026-06-14 16:26:13 +09:00
update: fileless spawn of LaTeX Environment
This commit is contained in:
@@ -0,0 +1,61 @@
|
||||
{ pkgs, ... }:
|
||||
pkgs.texliveSmall.withPackages (ps: with ps; [
|
||||
# Bibliography
|
||||
biber
|
||||
bibtex
|
||||
biblatex
|
||||
|
||||
# Japanese Support
|
||||
babel
|
||||
babel-japanese
|
||||
luatexja
|
||||
ascmac
|
||||
bxjscls
|
||||
zxjatype
|
||||
collection-langjapanese
|
||||
|
||||
# Fonts
|
||||
noto
|
||||
zxjafont
|
||||
haranoaji
|
||||
libertine
|
||||
latex-fonts
|
||||
mathfont
|
||||
newtx
|
||||
luainputenc
|
||||
fontspec
|
||||
type1cm
|
||||
|
||||
# Math
|
||||
amsmath
|
||||
amsfonts
|
||||
unicode-math
|
||||
mathtools
|
||||
lualatex-math
|
||||
|
||||
# Graphics
|
||||
graphics
|
||||
wrapfig
|
||||
caption
|
||||
here
|
||||
pgf
|
||||
circuitikz
|
||||
|
||||
# Tools
|
||||
latexmk
|
||||
subfiles
|
||||
enumitem
|
||||
hyperref
|
||||
cleveref
|
||||
float
|
||||
framed
|
||||
tabularray
|
||||
footmisc
|
||||
listings
|
||||
xcolor
|
||||
xstring
|
||||
xpatch
|
||||
blindtext
|
||||
multirow
|
||||
etoolbox
|
||||
] ++ [ ps.import pkgs.my-latex-pkgs ])
|
||||
@@ -0,0 +1,39 @@
|
||||
{ pkgs, eskk-vim-src }:
|
||||
[
|
||||
(final: prev: {
|
||||
vimPlugins = prev.vimPlugins // {
|
||||
vim-eskk = prev.vimUtils.buildVimPlugin {
|
||||
name = "vim-eskk";
|
||||
src = eskk-vim-src;
|
||||
};
|
||||
};
|
||||
})
|
||||
(final: prev: {
|
||||
my-latex-pkgs = prev.stdenvNoCC.mkDerivation {
|
||||
pname = "my-latex-pkgs";
|
||||
src = ../tex;
|
||||
version = "0.0.1";
|
||||
outputs = [
|
||||
"tex"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
(prev.writeShellScript "force-tex-output.sh" ''
|
||||
out="''${tex-}"
|
||||
'')
|
||||
];
|
||||
|
||||
dontConfigure = true;
|
||||
dontBuild = true;
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
path="$tex/tex/latex/my-latex-pkgs"
|
||||
mkdir -p "$path"
|
||||
cp *.sty "$path/"
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
})
|
||||
]
|
||||
+94
@@ -0,0 +1,94 @@
|
||||
{ pkgs, lib, ... }:
|
||||
let
|
||||
abbrevJSON = lib.importJSON ../abbrev.json;
|
||||
toEnvAbbrev = aj:
|
||||
lib.concatLines (map (e:
|
||||
"iabbrev <buffer> ${e.alias} \\begin{${e.target}}<CR><CR>\\end{${e.target}}<Esc>ki"
|
||||
) aj.env);
|
||||
toMathAbbrev = aj:
|
||||
lib.concatLines (map (e:
|
||||
"iabbrev <buffer> m${e.alias} ${e.target}"
|
||||
) aj.math);
|
||||
toGenericAbbrev = aj:
|
||||
lib.concatLines (map (e:
|
||||
"iabbrev <buffer> ${e.alias} ${e.target}"
|
||||
) aj.generic);
|
||||
in
|
||||
pkgs.vim-full.customize {
|
||||
name = "vim";
|
||||
vimrcConfig = {
|
||||
packages.myPackages = with pkgs.vimPlugins; {
|
||||
start = [
|
||||
vim-eskk
|
||||
vimtex
|
||||
];
|
||||
opt = [];
|
||||
};
|
||||
customRC = ''
|
||||
filetype plugin indent on
|
||||
set encoding=utf-8
|
||||
set autoindent
|
||||
set smartindent
|
||||
set expandtab
|
||||
set shiftwidth=4
|
||||
set tabstop=4
|
||||
set wrap
|
||||
set number relativenumber
|
||||
set nospell
|
||||
set ruler
|
||||
set cursorline
|
||||
set mousehide
|
||||
syntax enable
|
||||
|
||||
let g:vimtex_view_method = 'general'
|
||||
let g:vimtex_view_general_viewer = 'okular'
|
||||
let g:vimtex_view_general_options = '--unique file:@pdf\#src:@line@tex'
|
||||
let g:vimtex_compiler_method = 'latexmk'
|
||||
let maplocalleader = ","
|
||||
|
||||
let g:eskk#directory = "~/.config/eskk"
|
||||
let g:eskk#dictionary = { 'path': "~/.config/eskk/jisyo", 'sorted': 1, 'encoding': 'utf-8', }
|
||||
let g:eskk#large_dictionary = { 'path': "${pkgs.skkDictionaries.l}/share/skk/SKK-JISYO.L", 'sorted': 1, 'encoding': 'euc-jp', }
|
||||
let g:eskk#kakutei_when_unique_candidate = 0
|
||||
let g:eskk#enable_completion = 0
|
||||
let g:eskk#no_default_mappings = 1
|
||||
let g:eskk#keep_state = 0
|
||||
let g:eskk#egg_like_newline = 1
|
||||
let g:toggle_latex_eskk = 1
|
||||
|
||||
function! s:latex_eskk() abort
|
||||
if &filetype == 'tex' && g:toggle_latex_eskk ==# 1
|
||||
call eskk#enable()
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:latex_eskk_toggle() abort
|
||||
let g:toggle_latex_eskk = g:toggle_latex_eskk == 1 ? 0 : 1
|
||||
if g:toggle_latex_eskk ==# 1
|
||||
echomsg 'LaTeX Japanese Input Enabled'
|
||||
else
|
||||
echomsg 'LaTeX Japanese Input Disabled'
|
||||
endif
|
||||
endfunction
|
||||
|
||||
augroup vimrc_eskk
|
||||
autocmd!
|
||||
autocmd Filetype tex nnoremap <buffer><silent> <F1> :call <SID>latex_eskk_toggle()<CR>
|
||||
autocmd User eskk-enable-post lmap <buffer> l <Plug>(eskk:disable)
|
||||
augroup END
|
||||
|
||||
imap jk <Plug>(eskk:toggle)
|
||||
cmap jk <Plug>(eskk:toggle)
|
||||
|
||||
imap jj <C-]>
|
||||
|
||||
augroup latex_abbr
|
||||
${toEnvAbbrev abbrevJSON}
|
||||
|
||||
${toGenericAbbrev abbrevJSON}
|
||||
|
||||
${toMathAbbrev abbrevJSON}
|
||||
augroup END
|
||||
'';
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user