« wiresharkでDLNA解析:誰が曲順を壊すか | トップページ | ◆単純疑問:ダークマターと太陽系の惑星運行 »

TeraTermでコントロールCでコピー

Windows,Unix混在システムで作業をしていると、端末上の文字を拾おうとして、 コントロールCを押して、プログラムを止めてしまいがちです。
そこで、

 Unix側でコントロールCの割り当てを変える

Unix側で「intr(割り込み)=コントロールC」の割り当てを変えることができます。

コントロールCを例えばコントロールKにしたければsttyコマンドで次のようにします。

$ stty intr ^k
# ^はカレット、kは小文字のkです。
^kである必要はありませんが、^qなど予め割り当てられているものは避ける必要があります。
予め割り当てられているものはstty -aで知ることができます。

この設定は.~/.bashrcまたは、~/.profileあるいは~/.bash_profileに置くことを薦めます。
当初^Kを標準とすることには若干抵抗がありましたが、 unix上のエディタなどもコントロールCがコピーになっていることを考えると、
割り込みとしてのコントロールCは「負け」
であることを認めるべきです。

なお、その他の混乱も避けるため、次の設定を推奨します。

stty intr ^k
stty stop ""
stty susp ""
alias ls="ls -aF"

 Windows側(TeraTerm)でコントロールC制御

端末側でコントロールC/コントロールVでコピペが可能にします。

端末としてTeraTermを使っている場合次のファイル

C:\Program Files (x86)\teraterm\KEYBOARD.CNF
-- 32bitシステムなら
C:\Program Files\teraterm\KEYBOARD.CNF
でキー割り当てを変えることができます。

コピーをコントロールCに、ペーストをコントロールVにするには

[Shortcut keys]
; Ctrl + Insert 旧
;EditCopy=1362
; Ctrl + c 新
EditCopy=1070
; Shift + Insert 旧
;EditPaste=850
; Ctrl + v 新
EditPaste=1071
EditPasteCR=off
1070,1071はそれぞれコントロールC,Vのキーコードです。
C:\Program Files (x86)\teraterm\keycode.exeでコードは調べることができます。

保存後TeraTermの立ち上げで反映されるはずですが、反映されない場合、 「設定」メニューの「キーマップ読み込み」でKEYBOARD.CNFを指定すると以後有効になります。

 COM端子bitレートなど

;	Serial port parameters
;	  Port number
ComPort=3
;	  Baud rate
BaudRate=115200
;	  Parity (even/odd/none/mark/space)
Parity=none
;	  Data (7/8)
DataBit=8
;	  Stop (1/1.5/2)
StopBit=1
;	  Flow control (x/hard/none)
FlowCtrl=none
;	  Transmit delay per character (in msec)
DelayPerChar=0
;	  Transmit delay per line (in msec)
DelayPerLine=0

 ログにタイムスタンプを付ける

; Log append (on/off)
LogAppend=on
; plain text flag for Log (on/off)
LogTypePlainText=on
; timestamp flag for Log (on/off)
LogTimestamp=on
; without transfer dialog flag for Log (on/off)
LogHideDialog=off
; Current all buffer included in first (on/off)
LogIncludeScreenBuffer=off

|

« wiresharkでDLNA解析:誰が曲順を壊すか | トップページ | ◆単純疑問:ダークマターと太陽系の惑星運行 »

トラックバック


この記事へのトラックバック一覧です: TeraTermでコントロールCでコピー:

« wiresharkでDLNA解析:誰が曲順を壊すか | トップページ | ◆単純疑問:ダークマターと太陽系の惑星運行 »