Vim inactivity

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Vim inactivity

Ni Va
Hi,

What event can be used to know inactivity of vim for a long time?

Thank you.
Niva

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Vim inactivity

Bram Moolenaar

Niva wrote:

> What event can be used to know inactivity of vim for a long time?

Use CursorHold?  'updatetime' can be used to set the time.
Unfortunately, this option is used for other things as well (flushing
the swap file).

--
hundred-and-one symptoms of being an internet addict:
105. When someone asks you for your address, you tell them your URL.

 /// Bram Moolenaar -- [hidden email] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.
Reply | Threaded
Open this post in threaded view
|

Re: Vim inactivity

Ni Va
Le jeudi 5 avril 2018 22:47:38 UTC+2, Bram Moolenaar a écrit :

> Niva wrote:
>
> > What event can be used to know inactivity of vim for a long time?
>
> Use CursorHold?  'updatetime' can be used to set the time.
> Unfortunately, this option is used for other things as well (flushing
> the swap file).
>
> --
> hundred-and-one symptoms of being an internet addict:
> 105. When someone asks you for your address, you tell them your URL.
>
>  /// Bram Moolenaar -- [hidden email] -- http://www.Moolenaar.net   \\\
> ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
> \\\  an exciting new programming language -- http://www.Zimbu.org        ///
>  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
plugin/foo.vim
scriptencoding utf-8

au FocusLost   * call monitoring#unpause()
au FocusGained * call monitoring#pause()
au VimEnter    * call monitoring#main()

autoload/foo.vim

scriptencoding utf-8

" client code
fu Foo()
        echomsg "Save your data"
        echomsg "Save your data"
        echomsg "Save your data"
endfunc
let g:monitorfunc = 'Foo'


let s:startmonitoring = "Start Timer to monitoring"
let s:starttime = 0.0
let s:timeoutkill = 10
let s:timer = {}

fun! monitoring#main() "{{{
        echomsg s:startmonitoring
        let s:starttime = reltime()
        let s:timer = timer_start(500, 'monitoring#handler', {'repeat': -1})
        call timer_pause(s:timer,1)
endfunc "}}}
fun! monitoring#pause() "{{{
        echomsg "Pause monitoring"
        call timer_pause(s:timer,1)
endfunc
"}}}
fun! monitoring#unpause() "{{{
        let s:starttime = reltime()
        echomsg "Unpause monitoring"
        call timer_pause(s:timer,0)
endfunc
"}}}
fun! monitoring#handler(timer) "{{{
        let elapsedtime = reltimestr(reltime(s:starttime))
        if  str2float(elapsedtime) > s:timeoutkill
                echomsg "Monitoring, timeout ! time to save your data !! "
                call funcref(g:monitorfunc)
        else
                echomsg "Monitoring, alive...".elapsedtime
        endif
endfunc "}}}

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

---
You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
For more options, visit https://groups.google.com/d/optout.

monitoring_activity.gif (44K) Download Attachment