X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 136EA383F854 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1590152299; bh=8bvHHdzXjiMhoxlgzPLTmjfs6XctCmHAL6E0VqzqwC8=; h=Date:To:Subject:In-Reply-To:References:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=s/pbAuU2ysy4Aeis5owhB78VZ+HPy1HT4pFt1P4228+e27RszcD53xyi4mfQX0uRH XJLpllRkegbjiLFj2FetQSNXQ5LUAkERo7cinSVpYOfuUHTFw5gK30+HkVulx3uuVh NL68qfRo6E5/7HOEQK2tiu967AbMhrj/g/EQMznc= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 2E7C1385DC1C DKIM-Filter: OpenDKIM Filter v2.10.3 conssluserg-02.nifty.com 04MCw0Zm016307 X-Nifty-SrcIP: [124.155.38.192] Date: Fri, 22 May 2020 21:58:00 +0900 To: cygwin AT cygwin DOT com Subject: Re: [ANNOUNCEMENT] Updated: mintty 3.1.6 Message-Id: <20200522215800.8bedb2907eacbf1881102793@nifty.ne.jp> In-Reply-To: <20200522200131.e76be21d39ad5d7b836c843a@nifty.ne.jp> References: <20200522182257 DOT 068752a1be64dd35f85920ba AT nifty DOT ne DOT jp> <769b26a3-51a8-0d2c-871f-fd5e6bf793eb AT towo DOT net> <20200522200131 DOT e76be21d39ad5d7b836c843a AT nifty DOT ne DOT jp> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.30; i686-pc-mingw32) Mime-Version: 1.0 X-Spam-Status: No, score=-1.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, KAM_NUMSUBJECT, RCVD_IN_BARRACUDACENTRAL, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.29 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Takashi Yano via Cygwin Reply-To: Takashi Yano Content-Type: text/plain; charset="utf-8" Errors-To: cygwin-bounces AT cygwin DOT com Sender: "Cygwin" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 04MCwkxu025339 On Fri, 22 May 2020 20:01:31 +0900 Takashi Yano via Cygwin wrote: > On Fri, 22 May 2020 12:14:43 +0200 > Thomas Wolff wrote: > > Hi Takashi, > > > > Am 22.05.2020 um 11:22 schrieb Takashi Yano via Cygwin: > > > Hi Thomas, > > > > > > On Thu, 21 May 2020 19:41:27 +0200 > > > Thomas Wolff wrote: > > >> I have uploaded mintty 3.1.6 with the following changes: > > >> > > >> Window handling > > >>   * Fixed resource leak when displaying images (#995). > > >>   * Fixed crash condition on keyboard auto-repeat (#996). (Apologies > > >> for this one.) > > >> > > >> The homepage is at http://mintty.github.io/ > > >> It also links to the issue tracker. > > > After v3.1.5, the key repeat rate becomes almost halfened. > > > Is this behaviour by design? > > > > > > The key repeat rate is about 30 chars/sec in v3.1.4, but > > > it is 15 chars/sec in v3.1.5 and v3.1.6. > > > > > > It is little bit flustrating in editor cursor movement. > > > > > I've uploaded a commit: keyboard auto-repeat handling is now unaffected > > by default > > Explanation: the new auto-repeat rate limitation with a maximum of 30 > > cps (following the DECARR sequence of VT520) was effectively slowing > > down keyboards; I had the impression 30 would be enough... sorry > > I also think 30 cps would be enough, however, the key repeat rate > is not as setting by ESC[n-p sequence. Measured results in v3.1.6 > are as follows. Actual key repeat rate does not increase linearly. > > ^[[1-p : 1 cps > ^[[2-p : 2 cps > ^[[3-p : 3 cps > ^[[5-p : 4.7cps > ^[[10-p : 8.2cps > ^[[20-p : 14.8cps > ^[[30-p : 16.3cps Revising code in wininput.c as follows resolve this problem. static LONG last_key_time = 0; static LONG last_message_time = 0; LONG message_time = GetMessageTime(); LONG last_key_time_new = message_time; if (repeat) { #ifdef auto_repeat_cursor_keys_option switch (key) { when VK_PRIOR ... VK_DOWN: do not return...; } #endif if (!term.auto_repeat) return true; if (message_time - last_message_time < 2*1000/term.repeat_rate) /* Key repeat seems to be continued. */ last_key_time_new = last_key_time + 1000/term.repeat_rate; last_message_time = message_time; if (message_time - last_key_time < 1000/term.repeat_rate) return true; } last_key_time = last_key_time_new; ^[[1-p : 1 cps ^[[2-p : 2 cps ^[[3-p : 3 cps ^[[5-p : 5 cps ^[[10-p : 9.7cps ^[[20-p : 19.4cps ^[[30-p : 29.0cps -- Takashi Yano -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple