<commit_before>function! CustomSetupMake()
    call SetupMake()

    " Expand tabs by default, since indentation in function bodies is by far
    " more common than creating a new recipe which demands a leading tab.  This
    " is experimental for now, but it's very helpful to avoid putting tabs into
    " function bodies and ending up with mixed tabs and spaces (which will
    " promote a tab damage problem if others use ts != 8).
    " To insert a real tab character, type <C-V><Tab>.
    setlocal et sw=2 sts=2
endfunction
command! -bar SetupMake call CustomSetupMake()

function! CustomSetupRuby()
    call SetupRuby()

    setlocal tw=120 ts=2 sts=2 sw=2 et ai
    Highlight nolonglines
endfunction
command! -bar SetupRuby call CustomSetupRuby()

function! CustomSetupCpp()
    call SetupCpp()

    setlocal tw=120
    Highlight nolonglines
endfunction
command! -bar SetupCpp call CustomSetupCpp()

function! CustomSetupC()
    call SetupC()

    setlocal tw=120
    Highlight nolonglines
endfunction
command! -bar SetupC call CustomSetupC()

function! CustomSetupPython()
    call SetupPython()

    setlocal tw=120
    Highlight nolonglines
    SyntasticBufferSetup very_strict
    let g:ale_python_black_options = '-l 88'
    if len(g:AleFlake8Ignores) > 0
        let g:ale_python_flake8_options .= '--max-line-length 88'
    endif
    let g:ale_fix_on_save = 1
endfunction
command! -bar SetupPython call CustomSetupPython()

function! CustomSetupJavaScript()
    call SetupJavaScript()

    setlocal tw=120 ts=2 sts=2 sw=2
    Highlight nolonglines
endfunction
command! -bar SetupJavaScript call CustomSetupJavaScript()

function! SetupTerraform()
endfunction
command! -bar SetupTerraform call SetupTerraform()
autocmd FileType terraform call SetupTerraform()

call extend(g:airline_symbols, {
        \ 'readonly': "RO",
        \ 'whitespace': "\u2632",
        \ 'linenr': "\u2630",
        \ 'maxlinenr': "\u33D1",
        \ 'branch': "\u16A0",
        \ 'nonexists': "\u0246",
        \ }, 'keep')

nnoremap <Space>bb          :<C-u>CtrlPBuffer<CR>
nnoremap <Space>bd          :BW<CR>

nnoremap <Space>wc          <C-w>c
nnoremap <Space>ww          <C-w>w

nnoremap <Space>ff          :<C-u>CtrlPCurFile<CR>
nnoremap <Space>pf          :<C-u>CtrlPRoot<CR>

Noxmap   <Space>xdw         :StripTrailingWhitespace<CR>

" Use cpsm matcher for CtrlP.
let g:ctrlp_match_func = {'match': 'cpsm#CtrlPMatch'}
let g:cpsm_query_inverting_delimiter = ' '
<commit_msg>add custom typescript config<commit_after>function! CustomSetupMake()
    call SetupMake()

    " Expand tabs by default, since indentation in function bodies is by far
    " more common than creating a new recipe which demands a leading tab.  This
    " is experimental for now, but it's very helpful to avoid putting tabs into
    " function bodies and ending up with mixed tabs and spaces (which will
    " promote a tab damage problem if others use ts != 8).
    " To insert a real tab character, type <C-V><Tab>.
    setlocal et sw=2 sts=2
endfunction
command! -bar SetupMake call CustomSetupMake()

function! CustomSetupRuby()
    call SetupRuby()

    setlocal tw=120 ts=2 sts=2 sw=2 et ai
    Highlight nolonglines
endfunction
command! -bar SetupRuby call CustomSetupRuby()

function! CustomSetupCpp()
    call SetupCpp()

    setlocal tw=120
    Highlight nolonglines
endfunction
command! -bar SetupCpp call CustomSetupCpp()

function! CustomSetupC()
    call SetupC()

    setlocal tw=120
    Highlight nolonglines
endfunction
command! -bar SetupC call CustomSetupC()

function! CustomSetupPython()
    call SetupPython()

    setlocal tw=120
    Highlight nolonglines
    SyntasticBufferSetup very_strict
    let g:ale_python_black_options = '-l 88'
    if len(g:AleFlake8Ignores) > 0
        let g:ale_python_flake8_options .= '--max-line-length 88'
    endif
    let g:ale_fix_on_save = 1
endfunction
command! -bar SetupPython call CustomSetupPython()

function! CustomSetupJavaScript()
    call SetupJavaScript()

    setlocal tw=120 ts=2 sts=2 sw=2
    Highlight nolonglines
endfunction
command! -bar SetupJavaScript call CustomSetupJavaScript()

function! SetupTypeScript()
    call CustomSetupJavaScript()
endfunction
command! -bar SetupTypeScript call SetupTypeScript()
autocmd FileType typescript call SetupTypeScript()
autocmd FileType typescriptreact call SetupTypeScript()

function! SetupTerraform()
endfunction
command! -bar SetupTerraform call SetupTerraform()
autocmd FileType terraform call SetupTerraform()

call extend(g:airline_symbols, {
        \ 'readonly': "RO",
        \ 'whitespace': "\u2632",
        \ 'linenr': "\u2630",
        \ 'maxlinenr': "\u33D1",
        \ 'branch': "\u16A0",
        \ 'nonexists': "\u0246",
        \ }, 'keep')

nnoremap <Space>bb          :<C-u>CtrlPBuffer<CR>
nnoremap <Space>bd          :BW<CR>

nnoremap <Space>wc          <C-w>c
nnoremap <Space>ww          <C-w>w

nnoremap <Space>ff          :<C-u>CtrlPCurFile<CR>
nnoremap <Space>pf          :<C-u>CtrlPRoot<CR>

Noxmap   <Space>xdw         :StripTrailingWhitespace<CR>

" Use cpsm matcher for CtrlP.
let g:ctrlp_match_func = {'match': 'cpsm#CtrlPMatch'}
let g:cpsm_query_inverting_delimiter = ' '

{'fraction_non_alphanumeric': 0.09412897016361886, 'fraction_numerical': 0.019249278152069296, 'mean_word_length': 3.549912434325744, 'pattern_counts': {'":': 0, '<': 41, '<?xml version=': 0, '>': 43, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1768657', 'n_tokens_mistral': 1784, 'n_tokens_neox': 1666, 'n_words': 497}