Windows で管理者権限なしでカスタム キーボード レイアウトを使用する

Windows で管理者権限なしでカスタム キーボード レイアウトを使用する

私は「Programmer Dvorak」キーボード レイアウトで入力することに慣れています。これをインストールするには管理者権限が必要なので、学校では使用できません。私の学校では XP エンタープライズ ネットワークが稼働しているので、管理者権限を必要とせず、このレイアウトを使用できるように、レイアウトをローミング プロファイルにインストールする方法があるはずだと考えましたが、そうではありませんでした。

IT 部門にインストールを依頼しようとしましたが、不要なソフトウェアだと判断されたため拒否されました。

ソース コードを dll にコンパイルすることはできますが、それをレイアウトとして使用するように Windows に指示できるかどうか、またできる場合はその方法がわかりません。誰か知っていますか?

答え1

同じ問題を抱えていた人がWindowsを使って回避したようですコンパイルされた Autohotkey スクリプトこれは、USB メモリに入れて持ち運べるポータブル アプリケーションであり、アクセスが制限されている場合でも、ログオンするたびに接続して起動することができます。

ただし、プログラマー dvorak 用のレイアウトはないので、独自のレイアウトを作成する必要があります。これには、付属の Colemac レイアウトのテキスト編集が含まれると思います。なぜ標準レイアウト形式を使用しないのかは、私にはわかりません。

ただし、そのプログラム用に独自の Programmer Dvorak レイアウトを作成する場合は、ここにアップロードしてください。フォローする人は、この面倒な作業を避けられるので喜ぶでしょう。


アップデート

問題を解決しました!数時間、優れたポータブルキーボードレイアウト、プログラマーの Dvorak 構成ファイルをなんとかまとめることができました。画像は正しくありませんが、最も重要なのは、入力が完璧に機能し、すべてが期待どおりの場所にあることです。

インストール手順

かなりシンプルです。

  1. PKL をダウンロードしてフラッシュドライブに保存します。

  2. この layout.ini ファイルをダウンロードします -- 注: このサイトではファイルをアップロードできないと思われるので、これを投稿の下部に貼り付けます。

  3. 「Portable Keyboard Layout\layouts\colemak\layout.ini」を置き換えます

  4. Programmer Dvorak を使用するときはいつでも、「Portable Keyboard Layout\pkl.exe」を起動します。

興味のある方は、Microsoft キーボード レイアウト クリエーター 1.4そしてklc2ini Perl スクリプト(MSKLC の出力を PKL で使用できる形式に変換します)。


layout.ini ファイル--これを colemak layout.ini ファイルに貼り付けて、その中のすべてを置き換えます。

注: デッドキー セクションが何であるかはわかりません。スクリプトで多数のエラーが発生しています。ただし、動作しているので、特に問題はありません。

編集: ファイルをホストしましたここ、以下のテキストをコピーする際に問題が発生しました。StackOverflow のフォーマットの問題である可能性があります。

;
; Keyboard Layout definition for
; Portable Keyboard Layout
; http://pkl.sourceforge.net
;

[informations]
layoutname           = United States-Dvorak-Programmer
layoutcode           = DvrkProg
localeid             = 00000409

copyright            = Public Domain
company              = Free
homepage             = http://pkl.sourceforge.net/
version              = 1.0

generated_from       = DvrkProg.klc
modified_after_generate = no


[global]
; extend_key = CapsLock
shiftstates = 0:1:2
img_width = 296
img_height = 102


[fingers]
row1 = 1123445567888
row2 = 1123445567888
row3 = 1123445567888
row4 = 11234455678

[layout]
;scan = VK  CapStat 0Norm   1Sh 2Ctrl   Caps    CapsSh
SC002 = 1   0   &   %   --  ; QWERTY 1!
SC003 = 2   0   [   7   --  ; QWERTY 2@
SC004 = 3   0   {   5   --  ; QWERTY 3#
SC005 = 4   0   }   3   --  ; QWERTY 4$
SC006 = 5   0   (   1   --  ; QWERTY 5%
SC007 = 6   0   =   9   --  ; QWERTY 6^
SC008 = 7   0   *   0   --  ; QWERTY 7&
SC009 = 8   0   )   2   --  ; QWERTY 8*
SC00a = 9   0   +   4   --  ; QWERTY 9(
SC00b = 0   0   ]   6   --  ; QWERTY 0)
SC00c = OEM_4   0   !   8   --  ; QWERTY -_
SC00d = OEM_6   0   #   `   --  ; QWERTY =+
SC010 = OEM_7   0   ;   :   --  ; QWERTY qQ
SC011 = OEM_COMMA   0   ,   <   --  ; QWERTY wW
SC012 = OEM_PERIOD  0   .   >   --  ; QWERTY eE
SC013 = P   1   p   P   --  ; QWERTY rR
SC014 = Y   1   y   Y   --  ; QWERTY tT
SC015 = F   1   f   F   --  ; QWERTY yY
SC016 = G   1   g   G   --  ; QWERTY uU
SC017 = C   1   c   C   --  ; QWERTY iI
SC018 = R   1   r   R   --  ; QWERTY oO
SC019 = L   1   l   L   --  ; QWERTY pP
SC01a = OEM_2   0   /   ?   --  ; QWERTY [{
SC01b = OEM_PLUS    0   @   ^   --  ; QWERTY ]}
SC01e = A   1   a   A   --  ; QWERTY aA
SC01f = O   1   o   O   --  ; QWERTY sS
SC020 = E   1   e   E   --  ; QWERTY dD
SC021 = U   1   u   U   --  ; QWERTY fF
SC022 = I   1   i   I   --  ; QWERTY gG
SC023 = D   1   d   D   --  ; QWERTY hH
SC024 = H   1   h   H   --  ; QWERTY jJ
SC025 = T   1   t   T   --  ; QWERTY kK
SC026 = N   1   n   N   --  ; QWERTY lL
SC027 = S   1   s   S   --  ; QWERTY ;:
SC028 = OEM_MINUS   0   -   _   --  ; QWERTY '"
SC029 = OEM_3   0   $   ~   --  ; QWERTY `~
SC02b = OEM_5   0   \   |   --  ; QWERTY \|
SC02c = OEM_1   0   '   "   --  ; QWERTY zZ
SC02d = Q   1   q   Q   --  ; QWERTY xX
SC02e = J   1   j   J   --  ; QWERTY cC
SC02f = K   1   k   K   --  ; QWERTY vV
SC030 = X   1   x   X   --  ; QWERTY bB
SC031 = B   1   b   B   --  ; QWERTY nN
SC032 = M   1   m   M   --  ; QWERTY mM
SC033 = W   1   w   W   --  ; QWERTY ,<
SC034 = V   1   v   V   --  ; QWERTY .>
SC035 = Z   1   z   Z   --  ; QWERTY /?
SC039 = SPACE   0   ={Space}    ={Space}    ={Space}    ; QWERTY Space
SC056 = OEM_102 0   \   |       ; QWERTY OEM_102
SC053 = DECIMAL 0   .   .   --  ; QWERTY Decimal in Numpad







[deadkey1]
0    =    0 ;  
1    =   14 ;  -> 
14   = 2988 ;  -> ஬
15   =    0 ;  ->  
28   =   14 ;  -> 
29   =   12 ;  -> 
42   =    0 ; * ->  
54   =    0 ; 6 ->  
55   =    0 ; 7 ->  
56   =   10 ; 8 -> 

57   =    0 ; 9 ->  
58   =    0 ; : ->  
59   =  241 ; ; -> ñ
60   =  242 ; < -> ò
61   =  243 ; = -> ó
62   =  244 ; > -> ô
63   =  245 ; ? -> õ
64   =  246 ; @ -> ö
65   =  247 ; A -> ÷
66   =  248 ; B -> ø
67   =  249 ; C -> ù
68   = 3856 ; D -> ༐
69   =    0 ; E ->  
70   =    0 ; F ->  
71   =    0 ; G ->  
72   =    0 ; H ->  
73   =    0 ; I ->  
74   =    0 ; J ->  
75   =    0 ; K ->  
76   =    0 ; L ->  
77   =    0 ; M ->  
78   =    0 ; N ->  
79   =    0 ; O ->  
80   =    0 ; P ->  
81   =    0 ; Q ->  
82   =    0 ; R ->  
83   =    0 ; S ->  
84   =    0 ; T ->  
87   = 3857 ; W -> ༑
88   = 3858 ; X -> ༒
124  = 3859 ; | -> ༓
125  = 3860 ; } -> ༔
126  = 3861 ; ~ -> ༕
127  = 3862 ;  -> ༖
128  = 3863 ;  -> ༗
129  = 3864 ;  -> ༘
130  = 3865 ;  -> ༙
131  = 3872 ;  -> ༠
132  = 3873 ;  -> ༡
133  = 3874 ;  -> ༢
134  = 3875 ;  -> ༣
135  = 3876 ;  -> ༤

答え2

制限付きアカウントをお持ちで、インストール プログラムがシステム フォルダーやレジストリの LOCAL_MACHINE 部分にアクセスする必要がある場合、インストールすることはできません。管理者アカウントと制限付きアカウントを持つ主な目的は、ユーザーがシステム構成を変更できないようにすることです。

代替キーボードレイアウトのインストールは大した問題ではないと思うが、もし彼らがあなたの要求を受け入れれば、残りのユーザーの要求も受け入れる必要があり、その中にはバカもいる可能性が高い(「ねえ、彼はキーボードを持っているのに、なぜ Bittorrent をインストールできないの?」)、

また、追加プログラムの1つがシステムを破壊する可能性があり、特にドライバーをインストールすると(数年前にWindows 2000を初めてインストールしたときはマウスドライバーブルースクリーンになり、セーフモードからアンインストールする必要がありました。

答え3

コメントするほど十分な評判がないので、回答します。

これは、JWill の回答から抜粋した設定ファイルを含む github リポジトリです。

https://github.com/renxida/pkl-dvp

すべてセットアップ済みで、すぐに使用できます。すべてを zip ファイルとしてダウンロードし、pkl.exe を実行するだけです。

プルリクエストをいただければ幸いです。

関連情報