From da0b8849cd516a878ebd49de2eda0f3e85488f52 Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Sat, 8 Nov 2014 18:02:45 -0500 Subject: Get audio playing working with insert autocmds * Move test .vim file into the plugin/ directory. Some of the functions added in this commit should be moved to autoload/ when this is more together * Add functions: * Get & kill pids for mplayer * Play audio * Insert autocmd handlers * Add InsertEnter & InsertLeave autocmds that start playing the test song when entering insert mode and stop playing when you leave insert mode. --- plugin/auditory.vim | 42 ++++++++++++++++++++++++++++++++++++++++++ sounds.vim | 4 ---- 2 files changed, 42 insertions(+), 4 deletions(-) create mode 100644 plugin/auditory.vim delete mode 100644 sounds.vim diff --git a/plugin/auditory.vim b/plugin/auditory.vim new file mode 100644 index 0000000..6ca711e --- /dev/null +++ b/plugin/auditory.vim @@ -0,0 +1,42 @@ +" Pid +" === + +" Get most recent mplayer pid +function! s:GetPid() + return system("ps | grep mplayer | head -n1 | awk '{printf $1}'") +endfunction + +" Run system kill +function! s:KillPid(pid) + echom a:pid + return system("kill " . a:pid) +endfunction + +" Play audio +function! auditory#Play() + call system("mplayer ./private/test-track.mp3 &") +endfunction + +" Insert mode functions +function! s:PlayInsertEnter() + call auditory#Play() + let s:insert_mode_pid = s:GetPid() +endfunction + +function! s:PlayInsertLeave() + call s:KillPid(s:insert_mode_pid) +endfunction + + +nnoremap i :call auditory#Play() + +nnoremap x :echo call s:GetPid() + +augroup auditoryeinsert_mode + autocmd! + autocmd InsertEnter * call s:PlayInsertEnter() + autocmd InsertLeave * call s:PlayInsertLeave() +augroup END + + +nnoremap so :source % diff --git a/sounds.vim b/sounds.vim deleted file mode 100644 index dc6091a..0000000 --- a/sounds.vim +++ /dev/null @@ -1,4 +0,0 @@ -nnoremap i :call system("mplayer ./private/test-track.mp3 &") - - -" nnoremap e :call system("ps -T | grep mplayer | tail -n2 | head -n1 | awk '{print $1}'") -- cgit v1.2.3