From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Stephen Berman Newsgroups: gmane.emacs.help Subject: Re: Need help on writing an Emacs extension to help reading text content with timer Date: Wed, 29 Jan 2020 16:50:20 +0100 Message-ID: <87ftfy9s8z.fsf@gmx.net> References: <87v9ou5lyq.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="96822"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux) Cc: Emacs Help To: stardiviner Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Wed Jan 29 16:52:22 2020 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1iwpdd-000P8Z-NB for geh-help-gnu-emacs@m.gmane-mx.org; Wed, 29 Jan 2020 16:52:21 +0100 Original-Received: from localhost ([::1]:48234 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iwpdc-0004vM-Hz for geh-help-gnu-emacs@m.gmane-mx.org; Wed, 29 Jan 2020 10:52:20 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:54405) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iwpbn-0004ZH-9x for help-gnu-emacs@gnu.org; Wed, 29 Jan 2020 10:50:28 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iwpbl-0001bT-IN for help-gnu-emacs@gnu.org; Wed, 29 Jan 2020 10:50:27 -0500 Original-Received: from mout.gmx.net ([212.227.17.20]:33101) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iwpbk-0001ZS-5d for help-gnu-emacs@gnu.org; Wed, 29 Jan 2020 10:50:25 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1580313021; bh=MgZBI9J33syXUWx5nZ5cfCgZ2roVxDpEbXd/5X5/Fxw=; h=X-UI-Sender-Class:From:To:Cc:Subject:References:Date:In-Reply-To; b=J92C93wVguW5JV8U4FANwfPR7w37r+zM/Im4pyHrZrX4fZF3zQjJfkEKeLthiiM8d TySEfP1Y97Prt1WXkvf+t+bD0nj98rULcjFFESs1XaJkPnraKm9P6aImBU+IrdbyBt 86+5pAqPgPr9P01u0JMBwqA5k9w8wWDZ1Y40iOSQ= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Original-Received: from strobe-lfs84 ([178.9.100.209]) by mail.gmx.com (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mof9F-1jKacm10un-00p7hB; Wed, 29 Jan 2020 16:50:21 +0100 In-Reply-To: <87v9ou5lyq.fsf@gmail.com> (stardiviner's message of "Wed, 29 Jan 2020 23:19:41 +0800") X-Provags-ID: V03:K1:xYv3rVxtTFs4FurxKNZtLeoFuFdbpx7LchfnfueGIlRblNDQ3SU jPr379ff1ZXbFhXF+dIK9UBJ3Mm4ckblDszAsdSt8V4lVjTCF5IoyAmCJjzqNVjy40g1jNu pQYqZ/+EjOKEoHv492InBmGnT7BXDAmeTXSXLMSxkGMdDC8Y1AoePxkmpm33nmk7ihXSiip 1AhZ3a6RBex/0uZ9HzCaQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:yJLSJGhzFus=:qcq2jI6n9UOcHjsIX8n0z0 HQ2YUp4PlpHoi0MEtBPCy8beIsGQDS73x1iYj9gKZ/VrwSJUYPTQpRiaPMBFtLX6D1P/66WgG aGo8eDqo+SJD+ErhMlFPLOktnHdt7ci6GyNC1GjmoyWgPMvbBHX1x762OwJFF+AFHOpSqbnvS urOe3SAKcuB3F7g2hv/t9gohqO1Jcceptz7At13TEsM0lWLtZGRqADRgArnT2SMKgK8VYPXlK s1Qk8TzpwVtw0OEfktqIP4GgqK7i0yRInCmdzceNKi+DpuyTr2h9XC2VDLE9pFeUW74NC4ulX N75ItOQ62EhxO/tUX8n+QA0CgWh0rwVMQh15dHiGHnXfl4e+aTefMki4UWnebheZwtB2pxxJ3 6F9mUPF3C5o6yHPnNMXs9QKJH4o3ivzLtNsD65Ym5fKbY0ERqASnmhid4kdQFbWM/PCe8ZuHh BES15mEUeSKLkYog+d6mFFo27e+DRwpXtLQSO5xJOeWli1AdhgYw3s2+5RhMoVRp47eIin6aW CZ9rLT/77mWywkWimfllEj1x8wC/6ayAsqiMCo4qpO1n2yUQJRSGR3MWa/n8v9JPs1BQ7rmuA WEpCqX0aTJsLjS25Narb3O0RBDlpacGLPUyMeNlFKrJbUdRDbhEnU2eEZnrfZ5D8OBvZvkjPr zCq9DsaYCOuDVdhkhFyDrP1U0pQ5g2Swj56K4dxnYnlk4MERf/VPF+ITrAEDRlDGIamE4GNCb czKXkJd882eaD5P+T1xtm3bAzfsnVnrcdxUtGMtmspEEREqF7L/zy38i3sjG3WNKVz0VCA54 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.17.20 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:122310 Archived-At: On Wed, 29 Jan 2020 23:19:41 +0800 stardiviner wrote: [...] > (defun amread-start () > "Start / resume amread." > (interactive) > (setq qamread--running ^ |:-) > (run-with-timer 0 (/ 1.0 amread-wps) #'amread--update))) > > (defun amread-stop () > "Stop amread." > (interactive) > (prog1 amread--running > (when amread--running > (cancel-timer amread--running) > (setq amread--running nil) > (delete-overlay amread--overlay)))) > > (defvar amread-mode-map > (let ((map (make-sparse-keymap))) > (define-key map (kbd "q") 'amread-stop) > (define-key map [remap keyaobrd-quit] 'amread-stop) > map) > "Keymap for amread-mode buffers.") > > (define-minor-mode amread-mode > "I'm reading qmode." > :init nil > :keymap amread-mode-map > (if amread--running > (amread-stop) > (amread-start))) > #+end_src > > But the problem is that I can't stop this timer with defined keybinding =[q]= nor > with minor mode toggle command =amread-mode=. > > I don't know where is the problem. can someone help me to review my code? See above. :-) Steve Berman