mirror of
https://github.com/kenryuS/report-temp.git
synced 2026-06-14 16:26:13 +09:00
95 lines
2.6 KiB
Nix
95 lines
2.6 KiB
Nix
{ 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 = 'qpdfview'
|
|
let g:vimtex_view_general_options = '--unique @pdf\#src:@tex:@line:@col'
|
|
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
|
|
'';
|
|
};
|
|
}
|