[Windows] OSの限界を超えてキーの繰り返しレートを上げるにはどうすればよいですか?


Answers

Windowsでは、これをシステムコールSystemParametersInfo(SPI_SETFILTERKEYS,...) )で設定できます。

私は自分自身のためにユーティリティを書いた: keyrate <delay> <repeat>

Githubリポジトリ

リンクが消えた場合の完全なソース:

#include <windows.h>
#include <stdlib.h>
#include <stdio.h>

BOOL parseDword(const char* in, DWORD* out)
{
   char* end;
   long result = strtol(in, &end, 10);
   BOOL success = (errno == 0 && end != in);
   if (success)
   {
       *out = result;
   }
   return success;
}


int main(int argc, char* argv[])
{
   FILTERKEYS keys = { sizeof(FILTERKEYS) };

   if (argc == 1)
   {
      puts ("No parameters given: disabling.");
   }
   else if (argc != 3)
   {
      puts ("Usage: keyrate <delay ms> <repeat ms>\nCall with no parameters to disable.");
      return 0;
   }
   else if (parseDword(argv[1], &keys.iDelayMSec) 
         && parseDword(argv[2], &keys.iRepeatMSec))
   {
      printf("Setting keyrate: delay: %d, rate: %d\n", (int) keys.iDelayMSec, (int) keys.iRepeatMSec);
      keys.dwFlags = FKF_FILTERKEYSON|FKF_AVAILABLE;
   }

   if (!SystemParametersInfo (SPI_SETFILTERKEYS, 0, (LPVOID) &keys, 0))
   {
      fprintf (stderr, "System call failed.\nUnable to set keyrate.");
   }

   return 0;
}
Question

私は自分のキーボードのカーソルキーを使ってソースコードをナビゲートするのは悪い習慣です。 それは私が15年間やったことですが、これは私の移動速度がキーボードの速度によって制限されることを意味します。 VistaとOS X(私はデュアルブートMacBook)の両方で、私は私のキーの繰り返し率をすべて上げている。 しかし、Visual Studioや他のアプリでは、私の好みよりもずっと遅いです。

Visual Studioや他のテキストエディタでキーの繰り返し速度を速くするにはどうすればよいですか?




Windowsの場合、regedit.exeを開き、 HKEY_CURRENT_USER\Control Panel\Keyboard移動します。 KeyboardSpeedを好きなように変更してください。




価値のあることについては、ビジュアルアシストでは、Visual Studioで常に有効なキーの動きを倍増させるオプションがあります。




それは明らかかもしれませんが、

  • 水平ナビゲーションでは、私が知っているすべてのエディタで、ホーム(行開始)、終了(行末)、Ctrl +左(単語左)、Ctrl-右(単語右)

  • 垂直ナビゲーション、Page Up、Page Down、Ctrl-Home(テキスト開始)、Ctrl-End(テキスト終了)

また、(サイドノート上)、バックスペースキーとDeleteキーを強制的に非リピートにしたいので、テキストを削除(または置換)する唯一の方法は、 最初にマークしてから削除するかテキスト)。




OSXの場合、カーネルの拡張機能KeyRemap4MacBookを使用すると、あらゆる種類のキーボードパラメータを微調整することができます。その中で、キーリピート率(私は15ミリ秒に設定します。




Windows 7でこれを簡単に行うことはできないようだ。

ボタンを押したままにすると、速度はWindowsのレジストリキーで制御されます:HCU->コントロールパネル - >キーボード - >キーボード遅延。

このパラメータを0に設定すると、最大リピート率が得られます。 ドラマは、繰り返しスピードがまだ遅い場合は、0を下回ることはできないということです。 0遅延とは、繰り返し遅延が250msであることを意味します。 しかし、250msの遅れはまだ地獄のように遅いです。 これを参照してください: http : //technet.microsoft.com/en-us/library/cc978658.aspx

あなたはまだAccesibilityに行くことができますが、これらのオプションは身体障害者がキーボードを使用するのを助けるものであり、高速入力のオタクには役立たないことを知っておくべきです。 彼らは助けにならないでしょう。 Linuxを使用して、彼らはあなたに言います。

私はWindowsのソリューションをハードウェアの制御に託す。 あなたのキーボード用の特別なドライバを探したり、既存のものを調整してみてください。




私は限界を超えて加速する方法を知らないが、私は一回のプレスでさらに飛ばす方法を知っている。 私の知るのはWindowsだけで、これを行うMacはない.Ctrl + Arrowは単語をスキップし、エディタによっては空白の次のセクションにスキップすることができる。 Ctrl + Shift +矢印を使用して任意の方向の単語を選択することもできます。