web-dev-qa-db-ja.com

修飾キーのキーを押したままにする

Androidのキーを約100ミリ秒押し続けて、その下に句読点キー(メニューにある)を取得できることに恋に落ちました。 Ubuntuと同じ機能。文字を繰り返す必要がないので、何も見逃すことはありません。これは可能ですか?ありがとうございました :)

22
Patrick

現在、Ubuntuのデスクトップバージョンでこの種の機能を有効にするための迅速かつ簡単な方法はありません。

個人的に、私は デフォルトの作成キーショートカット ;の大ファンです。モバイルスタイルの長押しセレクション(♥)よりも高速で直感的です。とはいえ、時間と決意があれば、デフォルトのコアユニバーサルアクセスアプリケーションのslowkeysオプションをピギーバックして、モバイルオプション。

私自身をいじってみると、 XKB はスローキー制御に関連しているようです。 XKBを使用してUbuntuのキーボードバインドを構成および強化できます。私が知る限り、 このセクション には必要なものがあります。そのため、キーが長持ちしているときに代替文字を印刷するのは(比較的)難しいことではありません。

複雑になるのは、キーストロークにmultiple特殊文字を割り当てることです(例: "a"を押したまま、ä、à、á、âなどのオプションを取得します)。オプションをどのように循環しますか?ダイアログウィンドウにキャラクターがポップアップし、マウス、タブ、または矢印キーを使用していずれかを選択しますか?時間がかかるようです。

または、異なる文字に異なるホールド長を割り当てることができます。 àで100ミリ秒、áで200ミリ秒、âで300ミリ秒のホールドがあります。さらに、キャラクターのリストが長くなると、そこに座ってキーを3〜4秒間押し続けることができます。さらに時間がかかるようです。

スローキーではなく、repeatkeysオプションを試して、キーを複数回タップして特殊文字を提供することもできます。例えば。ただし、「good」、「eerie」、「aaaaaaahhh!」などを入力すると、不要な特殊文字がポップアップ表示されるリスクがあります。

あなたは、私が考えていない他の、より効率的な実装方法を思いついたかもしれません。ただし、当面はキーの組み合わせを作成することをお勧めします。 ☺

2
Boxbot

キーボード割り込みサービスルーチン(ISR)を変更することでこれが可能になると確信しています。キーが押されるたびに、割り込み信号がCPUに送信されます。 CPUは、キーボードISRを実行して、その割り込みを処理します。

ISRはハードウェアを直接処理し、高速でなければならないため、通常アセンブリ言語でコーディングされた低レベルのプログラムです。 ここ は、Intelプロセッサのハードウェア割り込みとその使用方法に関する詳細情報です。

キーボードには、元のIBM-PCの時代から独自のプロセッサーが搭載されており、キーが押されると非常に高速に文字を生成できます。

ここで、いくつかの定義が役立つ場合があります。

Repeat Delay:キーを押してからリピートを開始するまでの経過時間。

Repeat Rate:キーが押されると、キーボードはそのキーを繰り返します。それが繰り返される速度は、繰り返し率です。タイプマティック率とも呼ばれます。

キーボードISRルーチンは、「代替文字」機能の代わりに繰り返し遅延機能を使用するように変更する必要があります。キーを押して放すタイミングがその本質です。キーを押している時間を測定することにより、ISR(または割り込みハンドラー)は、代替文字の通常の文字(その「下にある」キー)を渡すことを認識します。

基本的に、キーボードの デバイスドライバー を変更または書き換えます。

これは、あなたが望むものを達成するために必要だと思うアプローチの概要です。

0
dbkeys

タッチパッドはAndroidのタッチスクリーンと同様に機能するため、キーボードよりも優れたインターフェースを提供します。実際、親指と人差し指を一緒に動かすことでズームし、方向を逆にすることでズームアウトする、まったく新しい一連のルーチンを実装できます。

タッチパッドは、1本の指と2本の指、すでに手のひらが誤ってタッチパッドに対して動いていて無視されていることをすでに検知できます。加速と減速の速度が認識されます。長押しで強調表示するテキストのマウスポインターを既に制御しています。

プログラマーがタッチプレスの長さを測定するコードを追加して、selectcopypasteなどのコンテキスト依存メニューを表示するのは簡単です。今日のスマートフォンはそうです。

あなたの質問は、組み込みのタッチパッドを備えたソフトウェアとキーボードをまったく新しいレベルに進化させることができる素晴らしいアイデアだと思います。キーボードに組み込まれている一部のタッチパッドには、カラー液晶画面があり、アイデアをさらに進めることができます。つまり、強調表示されている画面テキストをタッチパッドlcdにミラーリングし、微調整のためにズームインすることができます。

Apple、Google、Microsoft、Linusはあなたのアイデアに興奮しているかもしれません。確かに私の興味をそそられました!

0