« メモ:Ubuntu設定 | トップページ | 失敗を繰り返さない為の個人的メモ:スマホ編 »

DELとBSとUNIXとMAC

 Unixが大嫌いな第1の理由(DelとBsが逆)

Unixでは

  • BackSpaceはそのカーソル位置の文字を消去しカーソル位置は変わらない
  • Deleteはカーソルの一つ前の文字を消去しカーソルは後退する
という訳の分からない仕様を基本としています。(していました?)

こんな馬鹿げた仕様では作業は出来ないため

  • ターミナルでBackSpaceとDeleteを入れ替える
    例えばTeraTermでは「キーボードの設定」に「DELを送信するキー」というのがある
  • アプリケーションで役割を入れ替える
といったことを行います。

ターミナルとアプリケーション両方で対応すると、結局オバカ仕様のままになります。

昔からイライラさせられていました。今でも出会うことがあります。

削除&後退を指示するASCIIコードはBS(0x08)、その位置の削除はDEL(0x7F)です。
コードから推測できるように最初はBSしかなかった。とは言えなぜDELが策定された時点で動作が逆になってしまったのか?

 Mac(Del相当が無い!)=>EjectをDelに

Macではそもそも"Delete"相当キーが用意されていません。

Deleteと印字されたキーはUnixのDelete、即ちバックするオバカ仕様となっています。

カーソル位置の文字を削除するには[Fn]+[Delete]という複雑なキー操作が要求されます。
無理です。

Macは技術ではなくカルトです。秘密を沢山入れ、知っている信者が優越感にひたるというシステムなのでこの仕様なのでしょう。

ただ、さすがに操作不能という一般人(信者じゃない人)も多くいるようで、 「Karabiner」と いうアプリケーションでキー設定を変えられます。
使い道のほとんどないEjectキーをDelete相当キーにすることができます。

 コントロールC/Vでコピペ(UnixとMac)

これに関しては以前の記事TeraTermでコントロールCでコピーでUnixに関して述べました。

Macの場合[caps]+C,[caps]+Vという超裏ワザでコピペができます。
[caps]はUnix/Windowsの[コントロール]の位置にあるので まるでコントロールC/Vでコピペができるように扱えます。

実際には[コントロール]キーは上の方に別途用意されていて、それを使うと コントロールCは割り込み(intr)となります。

さすがカルトマシンMac。
普通に使う所は表示を隠す。信者にならなければ効率よく使えない。 凄いね。ヘドが出るぜ。

|

« メモ:Ubuntu設定 | トップページ | 失敗を繰り返さない為の個人的メモ:スマホ編 »

トラックバック


この記事へのトラックバック一覧です: DELとBSとUNIXとMAC:

« メモ:Ubuntu設定 | トップページ | 失敗を繰り返さない為の個人的メモ:スマホ編 »