summaryrefslogtreecommitdiff
path: root/vendor/bundle/ruby/3.4.0/gems/rouge-4.7.0/lib/rouge/demos/viml
blob: 93a364b98287066620a2e97fd2d6952c1966c72f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function! s:Make(dir, make, format, name) abort
  let cd = exists('*haslocaldir') && haslocaldir() ? 'lcd' : 'cd'
  let cwd = getcwd()
  let [mp, efm, cc] = [&l:mp, &l:efm, get(b:, 'current_compiler', '')]
  try
    execute cd fnameescape(dir)
    let [&l:mp, &l:efm, b:current_compiler] = [a:make, a:format, a:compiler]
    execute (exists(':Make') == 2 ? 'Make' : 'make')
  finally
    let [&l:mp, &l:efm, b:current_compiler] = [mp, efm, cc]
    if empty(cc) | unlet! b:current_compiler | endif
    execute cd fnameescape(cwd)
  endtry
endfunction