Hatena::ブログ(Diary)

明日はもっと幸せに このページをアンテナに追加 RSSフィード

2007-03-04

[]「思考の速度でパソコンを使う技術」をAutoHotKeyで作ってみる

○思考の速度でパソコンを使う技術

http://d.hatena.ne.jp/fromdusktildawn/20070212/1171244226

キーバインドをカスタマイズして、効率よくキーを叩こうという内容。

俺も自分用のキーバインドがあり、エディタにはそのキーが登録してあります。

でも、Windows自体でもそのキーバインドが使いたいので

AutoHotKeyを使ってWindows上でも自分のキーバインドが使えるようになってます。


自分のキーバインド

Alt +

i、j、k、l がカーソル移動。

(i:上、j:左、k:下、l:右)

その周りに、o(PgUp)、.(PgDown)、 ;(Home)、:(End)

とか、DelやBSもその辺に置いてます。

あとは、これらのキーにCtrl、Shiftを足すと選択とかブロック移動が出来るようになってます。

CtrlとかShiftを押すこと自体ウザイ人には向かないですが。


でもって、さっきのリンク先のキーバインド

やってみようと思って早速、AutoHotKeyで作ってみました。

たぶん・・・あってる・・・はず?w

メッセージはテキトウ。


やっぱり自分の使い慣れた方が使いやすい。


ちなみにAutoHotKeyは猫まねき等のキーバインドツール

とは仕組みが違う(用途も違う?)ので反応は

イマイチだけど、気軽に使うのに適してると思います。

2007年7月15日 修正

suspend

;----- 表示ウインドウの設定 -----
Gui, +AlwaysOnTop -Caption
Gui, Font, s20 bold
Gui, Add, Text, cWhite vMode, MMM

;**** リロード *****
$!r::
Reload
return

;*** 選択モード ****
$g::
Gui, hide
if (selMode = 0) {
  ; msgbox, 0
  selMode = 1
  GuiControl,, Mode, SEL
  Gui, Color, DB5D24
} else {
  ; msgbox, 1
  selMode = 0
  GuiControl,, Mode, NO
  Gui, Color, 245DDB
}
Gui, Show, AutoSize Center  NA  
SetTimer, GuiHide, 500
return

;****** サスペンド Toggle ******
; 変換キー
$vk1C::
suspend
selMode = 0
; msgbox, %A_Issuspended%
Gui, hide
;gui, show, x624 y998 NA

if A_Issuspended = 1 
{
  GuiControl,, Mode, OFF
  Gui, Color, 245DDB
}
else
{
  GuiControl,, Mode, ON
  Gui, Color, DB5D24
}
Gui, Show, AutoSize Center  NA  
SetTimer, GuiHide, 500
return

GuiHide:
SetTimer, GuiHide, off
Gui, Hide
Return

; **** Undo ****
$z::send ^z
; **** Redo ****
$y::send ^y
; **** カット ****
$x::
selMode = 0
send ^x
return
; **** コピー ****
$c::
selMode = 0
send ^c
return
; **** ペースト ****
$v::
selMode = 0
send ^v
return

;-------------------------------
;      カーソル移動
;      選択処理
;-------------------------------
$k::
if (selMode = 0) {
  send {up}
} else {
  send +{up}
}
return

$l::
if (selMode = 0) {
  send {down}
} else {
  send +{down}
}
return
$s::
if (selMode = 0) {
  send {left}
} else {
  send +{left}
}
return

$d::
if (selMode = 0) {
  send {right}
} else {
  send +{right}
}
return

$j::
if (selMode = 0) {
  send {home}
} else {
  send +{home}
}
return

$`;::
if (selMode = 0) {
  send {END}
} else {
  send +{END}
}
return

$u::
if (selMode = 0) {
  send {pgup}
} else {
  send +{pgup}
}
return
$p::
if (selMode = 0) {
  send {pgdn}
} else {
  send +{pgdn}
}
return

$i::
if (selMode = 0) {
  send ^{up}
} else {
  send +^{up}
}
return

$o::
if (selMode = 0) {
  send ^{down}
} else {
  send +^{down}
}
return
$a::
if (selMode = 0) {
  send ^{left}
} else {
  send +^{left}
}
return
$f::
if (selMode = 0) {
  send ^{right}
} else {
  send +^{right}
}
return