ラベル keyboard の投稿を表示しています。 すべての投稿を表示
ラベル keyboard の投稿を表示しています。 すべての投稿を表示

2013年5月31日金曜日

Bluetoothデバイスがつながらなくなりました → AppleJackで解決

一週間ほど前のことですが会社のMacBook Airを朝スリープ状態から復帰させた後、マウスとキーボードが繋がらないことに気づきました。前日まで問題なく使えていたのですが。
メニューバーのアイコンを見ると認識はされているようです。

ワイヤレスマウス(Microsoft製)とワイヤレスマウス(Apple製)の両方が同時におかしくなったので、デバイス側の不具合の可能性は低いと思いました。
まず確認のため実行したのは、以下の通りです。

  • デバイスの電池の確認、電源の入れ直し
  • Macの再起動
  • Bluetoothデバイスの削除、再登録

以上を行ったのですが、改善されません。
頻繁に起きるわけではありませんが、いつもだとこれで解決するのですが、だめだったので、更に以下の手順を行うことにしました。

  • ディスクの修復
  • ファイルシステムの修復
  • アクセス権の修復
  • PRAMのクリア
  • SMCのクリア
  • 確実に動いていた時点までのバックアップ復元
  • OS再インストール

念のためですが、すべてを行ったわけではありません。
ここで、最初の3つ(ディスクの修復〜アクセス権の修復)には、このMacBook Airの場合、USBメモリから立ち上げる必要があります。でも、箱を探してくるのが面倒なのと、以前入れておいたAppleJackというメンテナンス用のソフトウェアを思い出したので、それを使ってみることにしました。(Mountai Lionならばリカバリ領域から再起動すればいいのでしょうが)
手順は、以下のようになります。既にAppleJackがインストールされている場合の説明です。

  1. シングルユーザーモードで再起動する
  2. コマンドラインからAppleJackを起動する
  3. 実行したい処理を選択する
  4. 再起動する

シングルユーザーモードで再起動するのは、Macの電源を入れるときに、command + Sキーを押せばいいですね。

しばらくすると、rootの状態でコマンドラインが起動します。
コマンドラインからapplejackと入力します。

For troubleshooting assistance, just type 'applejack' at the prompt
# applejack

すると以下の表示が出ます。日付が昨日になっているのは、ログを取っていなかったので、昨日再実行したためです。

**********************************************************************
* AppleJack 1.6, Revision: 1.144                                     *
* Copyright (c) 2002-10 Kristofer Widholm, The Apotek                *
* - AppleJack comes with ABSOLUTELY NO WARRANTY                      *
* - This is free software, and you are welcome to redistribute it    *
*   under certain conditions, as specified in the GPL LICENSE you    *
*   read during installation of this product: www.opensource.org     *
*                                                                    *
* USAGE (interactive): Just run through the tasks in the menu below, *
*   in ascending order, and let AppleJack fix your machine.          *
* USAGE (automatic mode): To start AppleJack in auto mode, type:     *
*   'applejack auto'                                                 *
*   'applejack auto restart' (restarts computer when done)           *
*   'applejack auto shutdown' (shuts down the computer when done)    *
*   To do a deep clean of the system, use AUTO instead of auto.      *
*   Please see the man page for details: `man applejack`             *
*                                                                    *
* Donations gratefully accepted at http://applejack.sourceforge.net  *
**********************************************************************

Thu May 30 08:53:38 JST 2013. Gathering information...

- User ID: 0, NAME: root
- OS Version: 10.6.8
- According to dynamic_pager, virtual memory is located at /private/var/vm.
- Local root filesystem is journaled

                              AppleJack

Enter the associated number or letter to select the next task.
It is strongly recommended you do them in the order listed!

[a] auto pilot. AppleJack will do all tasks sequentially.

[1] repair disks
[2] repair permissions
[3] cleanup cache files
[4] validate preference files
[5] clean up virtual memory


Your choice (Just hit return to quit):

今回は、1, 2, 4を順に実行しました。4はエラーやワーニングが出なかったので特に必要なかったようですが、ついでに実行してみました。
実行が終わったらreturnキーだけを入力すると、再起動するかシャットダウンするよう促されます。
最後に、restartしたら元通りBluetoothのキーボードとマウスが認識されるようになりました。


Exiting the script.
If you have modified the disk at all, you should restart the computer
before continuing to work.
Would you like to restart your computer, or shut down?




Applejackを実行した時、アクセス権の修復以外では特に問題がなかったので、アクセス権の修復が効いたようです。
これでだめだと、PRAMクリア以降を試す予定でしたが、大事に至らずよかったと思います。

2013年4月6日土曜日

キーボード操作で別のアプリケーションの特定のウインドウに移動したいとき

だいぶ前の記事で、command + tabキーでアプリケーションの移動を行なっているという記事を書きました。結構便利なのですが、ひとつ不満な点がありました。
それは、移動したいアプリケーションで複数のウインドウを開いていた場合、どれに移動するかわからない点です。特に別々のデスクトップ上にウインドウを開いている場合、操作が増えて不便です。


そんな時に使えるキーボード操作方法がありました。Snow Leopardでもできたので以前からあったみたいで、私が知らなかっただけですが、最近試行錯誤していたら見つけました。以下の手順で操作します。

  1. command + tabで起動されているアプリケーションの一覧を出す。
  2. command + 左右の矢印キーで移動したいアプリケーションを選ぶ。
  3. command + 上下矢印キーを押すと、そのアプリケーションのすべてのウインドウが表示される。
  4. 矢印キーだけ(commandキーは離す)で移動したいウインドウを選びreturnキーを押す。

すると、そのウインドウに移動できます。command + tabキーをよく使う人には向いていると思います。
また、これはDockに格納されたウインドウも選べますので、人によってはこっちの方が便利かもしれません。
画面の動きもちょっと面白いです。最後のreturnキーを押すときに、shiftキーを押してからreturnキーを押すと初めだけですがゆっくり動作するので動きがわかります。

このキー操作は、別のアプリケーションでなく同じアプリケーションでも使えます。上の操作手順で、2.の時に今使っているアプリケーションを選べばいいです。
同じアプリケーションの場合は、control + F3キーでもいいですね。ちょっと押しにくいですが。また、(fnキー +) F10キーもあるのですが、こっちは覚えられなくてあまり使っていません。
本当は、「次のウインドウを操作対象にする」に割り当てたcommand + ` キーで別のデスクトップにも移動できるといいのですが、別のデスクトップには移動してくれないようです。

2013年2月23日土曜日

ファイルを保存しないで閉じたい場合のショートカット[解決 3/27]

この記事は、Mountain Lionにしてから困っていることのひとつです。解決策を見つけられなくて、どなたか教えてくださることを期待して記事を書いています。

ファイルを開いて中身を変更してから、command + Wでウインドウを消そうとすると、ファイルを保存するかどうかを尋ねるダイアログウインドウが出てきます。
ファイルの中身を元のままにして変更を保存したくない場合、Snow Leopardの時は、command + Dでウインドウが消えるアプリケーションがほとんどだったのですが、Mountain Lionでは逆にほとんどのアプリケーションでcommand + Dが効きません。

キーボードでウィンドウを操作対象にしてみるなどいろいろ試しましたが、だめでした。tabキーでフォーカスは移動しているようなのですが、そこから先はキーボードで処理できませんでした


特にプレビュー.appでcommand + Dを使いたいと思っているのに使えなくてとても不便です。
プレビューはApplescriptableではないようなので、そちらからの解決も難しそうです。今のところは、command + Zを何回か繰り返して、ウインドウバーの赤ボタンの黒丸が消えてからcommand + Wを押しています。タッチパッドを使って普通にクローズボタン、変更を元に戻すも使うようになってきましたが、できればキーボードで簡単にウインドウを閉じたいと思っています。
なにかいい方法があれば教えて下さい。_o_

2013年2月22日金曜日

Macのログインウインドウの名前の入力モードの英語化 [画像追加 2/24]

3日前の記事の終わりの方で、Macへのログインウインドウでデフォルトの入力モードが日本語になっていて困っていると書きましたが、親切にヒントを教えてくださった方がいらっしゃいました。
解決できなくて困っていることも書いてみるものですね。結果はOKでした。非常にうれしいです。

その方法ですが、システム環境設定のユーザとグループから設定した後、ログインウインドウで操作します。Mountain Lionでログイン時に名前とパスワードの表示を選んでいる場合です。その方が、少しだけセキュリティが高いと思ったので。ユーザのリストを選んでいる場合は多分関係ないと思います。

1. システム環境設定のユーザとグループでの設定

ユーザとグループの画面は、はじめは下の図のようになっていると思います。

左下のロックアイコンがロックされていたら、ロックアイコンをクリックして管理者パスワードを入れて、いったんロックを外します。そして、ロックアイコンの上のログインオプションをクリックします。

次に、「ログインウインドウに入力メニューを表示」のチェックをオンにします。
そして、Macを再起動します。

2. ログインウインドウでの操作

Macを再起動するとログインウインドウが表示されます。右上に言語を選ぶメニューが表示されていると思います。
ここで、キー入力が日本語になっている場合、英語を選び後は普通にログインします。

私の場合、メニューは英語なのに、実際に入力されるのは日本語だったのですが、いったんメニューを日本語にして更に英語にするとキーボードの入力も英語になりました。

ログインした後、もう一度再起動して、はじめから英語になっているのを確認してください。
これで終わりです。[追記: 2013/2/24 はじめにブログを書いた時は、ログインウィンドウのスクリーンショットを入れていませんでしたが、撮り方がわかりましたので追加しました。VNCを使います。]

以前もやったことがあるのですが、その時はうまく行かなかったのです。多分、入力モードが英語になっていて、日本語入力モードだったのですが、いったん日本語メニューにして英語に戻さなかったからかと勝手に納得しています。キーボードのcommand + spaceキーで英語モードにしただけだったのかもしれません。

ちょっとあやふやな記憶で申し訳ありませんが、希望通りにすることができました。匿名さん、ありがとうございました。

2013年1月15日火曜日

キーボードショートカットの「次のウインドウを操作対象にする」を変更すると便利

アプリケーションの切り替えには、キーボード派の方は、command + tabキーやQuicksilverなどのランチャーを使う場合が多いと思います。
でも、Macを立ち上げて時間がたってくると、ウインドウをたくさん開き、同じアプリケーション内でもキーボードでウインドウを切り替えたいと思います。

そんな時に設定しておくと便利なキーボードショートカットのtipsです。

システム環境設定の「キーボード」の中に「キーボードショートカット」があります。
そこの左ペインの「キーボードと文字入力」の中に「アプリケーションの次のウインドウを操作対象にする」という項目があります。
Mountain Lionでは、「次のウインドウを操作対象にする」と名前が短くなっています。
アプリケーション間の切替えは、command + tabキーです。その逆方向の切替えがcommand + ` になっています。そのため、「次のウインドウを操作対象にする」をcommand + ` キーにすると覚えやすく、指の移動距離も短いためとても便利です。
USキーボードの場合、tabキーと` キーは上下隣ですので、USキーボードの人には特にお勧めです。
是非、使ってみてください。

2013年1月13日日曜日

Synergyを自動起動するようにする

Synergyを設定して以前より便利になりました。でも、だんだん直したい点も出てきました。以下に挙げます。
  1. Windowsの左画面が遠い。
  2. Synergyのアイコンが2個表示される。
  3. ログイン時に自動起動したい。
  4. ログメッセージが多い。
順番に、説明と対策を書いていきます。

1. Windowsの左画面が遠い

Synergyからは、Windowsの画面は1つあるようにしか見えないのですが、実際は24インチモニタが2台並んで接続されています。そのうちの右側のモニタをMacとWindowsで共用しています。ですので、Macのモニタの画面の左端からWindowsの左端のスタートメニューまで行こうとすると、距離が1920 x 2あるので移動が大変です。(何か設定があるのかもしれませんが)

実際の見た目は以下のようですが、
#   mon.1      mon.2     MB Air
# +--------+ +--------+ +-------+
# |Win7    | |MBA/Win7| |MBA    |
# |        | |        | |       |
# +--------+ +--------+ +-------+

Synergyからは以下のように見えます。

#   mon.1      mon.2      mon.2     MB Air

# +--------+ +--------+ +--------+ +-------+
# |Win7    | |Win7    | |MBA     | |MBA    |
# |        | |        | |        | |       |
# +--------+ +--------+ +--------+ +-------+


現状では、Synergyの設定を変えて、以下のようにMacのモニター2(メニューバーのある方)の下に、Windowsのモニタ1が来るようにしています。

# +--------+ +-------+
# |MBA     | |MBA    |
# |        | |       |
# +--------+ +-------+
# +--------+ + - - - -+
# |Win7    | |Win7    |
# |        | |        |
# +--------+ + - - - -+
物理的には、MBAの左側画面とWin7の右側が共用されていて、普段はMacの画面が表示されているわけです。ちょっとわかりづらいですかね。Mac上でマウスを下に持って行くと、Windowsの画面の上からマウスが下りてきます。これで、マウスの大移動をする必要がなくなり、楽になりました。


2. Synergyのアイコンが2個表示される

Dock上や、command + tabキーを押した際に、Synergyのアイコンが2個表示されています。
Synergyはいったん設定した後は、特に操作対象にはなりませんので、非表示でかまいません。
これには、アプリケーションファイルのパッケージを開き、その中のInfo.plistを修正します。
Info.plistをエディタで開いて、<dict>と</dict>で囲まれた領域に次の2行を追加します。

<key>LSUIElement</key>
<true/>

これで、Dock等にアイコンが表示されなくなります。また、注意点としてFinder上での起動操作等も出来なくなりますので、次の3, 4等の対策を行った後に変更するのがいいと思います。

3. ログイン時に自動起動したい
4. ログの出力が多い

Windows側のSynergyクライアントはログイン時に自動的に起動されます。Macでもログイン時に起動したいと思います。単純にSynergysのDockアイコンを「ログイン時に起動」と設定してもうまくいかなかったので、ちゃんとした方法を調べました。
まず、サーバの起動方法は、Synergyのwikiサイトをいろいろ調べると

$ synergys --config /path/to/synergy.conf

でコマンドラインから起動する方法が示してありました。また、Mac OS Xでは起動はlaunchdで行うのがよいとのことでした。このブログを書いている時点(1/13)では、サーバーのProperty List (plist)ファイルの例はまだなくソースコードを見てほしいという記述なっていました。
以下に現在使っているplistファイルの例を記載します。


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
          "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
  <!-- Mac OSX only: Copy this plist file into [~]/Library/LaunchAgents to start synergy server automatically. Make sure you change configuration file below -->
  <dict>
    <key>Label</key>
    <string>org.synergy-foss.org.synergys.plist</string>
    <key>OnDemand</key>
    <false/>
    <key>ProgramArguments</key>
    <array>
      <string>/Applications/Synergy.app/Contents/MacOS/synergys</string>
      <string>--no-daemon</string>
      <string>--debug</string>
      <string>NOTE</string>
      <string>--config</string>
      <!-- Replace this path with the path to your synergy configuration -->
      <string>/Users/your_user_id/.synergy.conf</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
  </dict>
</plist>


以上の内容を、
~/Library/LaunchAgents/org.synergy-foss.org.synergys.plist
として作成します。
注意点というほどではありませんが、次の点に注目してください。

  1. この例では、synergysはデーモンとしては起動せず通常のプログラムとして起動しています。
  2. --debugオプションにNOTEを指定して、ログファイル(/var/log/system.log)の出力を抑えています。これを指定しない場合、デフォルトはINFOのため、マウスが別のマシンの画面に出入りした場合や、クリップボードへのコピー、ペーストなどの際もログファイルに出力が出てきます。(synergys -hでhelpが見れます)
  3. --configオプションの引数で、confファイルを指定しますが、ここは好きな場所を指定してください。また、confファイル自体は、wiki等を参考に作成してもいいのですが、前の記事のようにSynergyから、FileメニューのSave configuration as... を選んで、自分のホームディレクトリの下に.synergy.conを保存するのが簡単だと思います。
Synergyから保存した時、バグかもしれませんが、confファイルのパーミッションにreadが付いていませんでしたので、修正してください。

$ less .synergy.conf
.synergy.conf: Permission denied

なんと、自分で作成したファイルなのに読めません。

$ ls -l .synergy.conf
--w-------  1 karuku  staff  737 11  9 11:48 .synergy.conf

あまり見たことのないパターンです。次のように修正してください。
$ chmod a+r .synergy.conf

ここまで準備が整った状態で、以下のコマンドでsynergysが実行されるよう指定します。
launchctl load ~/Library/LaunchAgents/org.synergy-foss.org.synergys.plist

ログインし直しても実行されるようです。
実行を止めたい場合は、以下のコマンドを使います。


launchctl unload ~/Library/LaunchAgents/org.synergy-foss.org.synergys.plist


これでログイン後の立ち上げなどは気にする必要がなく使えるようになりました。

ただ、ちょっとした問題として、Macのターミナルが最前面のアプリケーションになっていると、Windows側にマウスが入っていっても、キーボード入力がWindowsに渡らないという現象が起きています。また、その状態でWindowsのExplorer上でスクロールバーをマウスで操作するとターミナル側の行がセレクトされたりの現象も起きています。
また、Windows上にマウスが移動している場合も、Macの画面上にマウスポインターが現れたりしているようですね。通常は、Windowsの画面を見ているので気にならないとは思いますが。

最後に、次の記事にMacがスリープして解除された後にWindows上のマウスのスピードが速くなる現象の対処について書きたいと思います。

MacのマウスとキーボードをWindowsで共有できるよう設定(Synergy)

会社でMacBook AirとWindows 7 (Dell PC)を使っているのですが、困ったことがありました。


困っていたこと

机の上にWindows用のモニタとMac用のモニタ、MacBook Air (13")が置いてあり、普段はMacを使っています。たまにWindowsを使わなければならない時に、キーボードやマウスを持ち替えなければならないので面倒でした。また、Windows用のキーボードは10キー付きのフルキーボードで場所も取られます。Macのワイヤレスキーボードはコンパクトでいいのですが。

画面構成は以下のようになっています。

#   mon.1      mon.2     MB Air
# +--------+ +--------+ +-------+
# |Win7    | |MBA/Win7| |MBA    |
# |        | |        | |       |
# +--------+ +--------+ +-------+



モニタ1 (三菱 RDT24IWEX)は、常時Win7機用にしてあります。
モニタ2 (EIZO S2433W)は、MacBook Air (以下、MBAと略します)とWin7機につないでいますが、普段はMBAのメイン画面として使用しています。切り替えは、モニタの外部入力スイッチで行っています。
右端は、MBA本体(13")です。


今までは、MacからWindowsにVNC (Chicken of VNC)で入って、その状態でモニタ2をWindowsに切り替えて使っていました。そうすると、マウスはWindows用に持ち替えなければなりませんが、キーボードはMacのままで、モニタ2もVNCのタイムラグがなく使えていたからです。ただ、事前にVNCに入ったりやはりマウスを持ち替えなければならないのが面倒でした。


解決方法

しばらく上の設定で使っていましたが、もう少しよい解決方法はないかと調べていたらSynergyというフリーのソフトウェアで、異なるマシン間でマウスとキーボードを共用できることがわかりました。Mac, Windows以外にLinuxなどUnix系のOSもサポートしているようです。

ダウンロード

Synergyは、http://syngergy-foss.org/からダウンロードできます。このページのダウロードリンクをクリックし、そこからPremium (寄付をする場合)、Non-Premium (寄付をしない場合)を選択します。私はNon-Premiumを選択して、以下のような画面になりました。そこから、必要なOSバージョンに対応したものをダウンロードします。
私は、Windows 64-bit版とMac OS X 10.6用のver-1.10ベータをダウンロードしました。
構成としては、Mac側をサーバーに、Windows側をクライアント側にします。


インストール(Mac)

まず、Mac用としてダウンロードしたディスクイメージを、ダブルクリックしてオープンします。その中に入っているSynergyアイコンをアプリケーションフォルダにコピーします。
アプリケーションフォルダからダブルクリックして実行した後、Serverセッティングを選ぶと、以下のような画面になります。
Serverのチェックボタンがオンになっています。また、IP AddressがWindows側の設定に必要になるのでメモしておきます。(この場合は、192.168.56.4。環境によって異なります。)
次に、Configure Server...を押して設定を行います。
中心のグリッドにあるアイコンがサーバーのMacのアイコンです。クライアントの配置のために、右上のモニターアイコンを仮想的に配置したい場所にドラッグして置きます。
そのアイコンをダブルクリックして名前を決めます。(ここでは、Win7)
Screen nameだけ変更して、OKボタンを押すと次のようになります。
この後、更にOKボタンを押し、現在の設定をFileメニューの"Save configuration as..."からテキストファイルとして保存しておきます。
私は、ホームディレクトリ下に、.synergy.confという名前にしました。
先頭を.(ピリオド)にしていると、デフォルトではFinderから見えなくなるので注意してください。
この後、Synergyの起動画面のStartボタンを押してサーバーの実行を開始してもかまいませんが、Windows側の設定をしていないので、当然ですがまだ使えません。


インストール(Windows)

次に、Windowsの方にインストールします。ダウンロードしたインストーラをダブルクリックして、指示に従いインストールします。(スクリーンショットを取り忘れてわかりづらいですがすみません。時間があるときにアップデートしたいと思います。)
こちらもインストール後に、スタートメニュー等から実行すると以下のような画面が出てきます。
Cのチェックボックスでクライアントにして、Mac側でメモしていたServer IPを入れます。(私の場合は、192.168.56.4)
その後、Startを押すとクライアントの実行が開始されます。

サーバー(Mac側)の実行

Mac側に戻りServerのStartボタンを押すと実行開始されます。
通常の設定のままの場合、Serverが起動されるとDockに2つSynergyのアイコンが表示されます。名前はSynergyとSynergys (サーバのsが最後に付いています。)

私は、この状態でマウスポインタがMac用のモニタ1の左端から外れた後、更に左に動かすとWindows上にマウスポインタが現れ、キーボードもMacのまま使えるようになりました。
ついでですが、MacではUSキーボードを使っているので、日本語/英語の切り替えは、 shiftキーを押してescキーを押すことで切り替えています。

以前のVNCを使う場合に比べ、非常に楽になりました。マウスやキーボードの反応もほとんど気にならないくらい速いです。
なお、その後、いくつか設定を改善したい点も出てきたので別の記事として書きたいと思います。ちょっと長くなってしまいましたので。