今更ながら年末のEmacs Advent Calendarを読んでいたら、「Emacs Lispの汎変数(とその他) - Qiita 」にさらりとmac-auto-ascii-modeの紹介が。

また、新機能 mac-auto-ascii-mode を有効にすると、ミニバッファにカーソルを移動する際、自動的に英語モードになります。これで日本語入力モードでうっかり M-x shell と入力しようとして M-x しぇっl になるような悲惨な事故をなくすことができます。

2014-11-21のemacs-devel でアナウンスされていました。

*** New global minor mode `mac-auto-ascii-mode’ for Mac OS X 10.5 and
later. If enabled, it automatically selects the most-recently-used
ASCII-capable keyboard input source on some occasions: after prefix
key (bound in the global keymap) press such as C-x and M-g, and at the
start of minibuffer input.
Note: Strictly speaking, its implementation has a timing issue: the
Lisp event queue may already have some input events that have been
processed by some previous keyboard input source but yet to be
processed by the Lisp interpreter.

[2014-10-25-1] を書いた時はemacs-24.4-mac-5.0.tar.gzだったので、当時ビルドした方はリビルドが必要です。[2014-10-25-1] の手順は5.2にアップデート済みです。

以下を設定するだけです。

(mac-auto-ascii-mode 1)

IMEの入力モードを変えることなく、M-x出来ているのが分かるかと思います。少し分かりづらいかな?

mac-auto-ascii-mode

残念なのが、ミニバッファから戻ると入力モードがUS固定になること。mac-input-source()とminibuffer-exit-hookあたりで出来るかと思いましたが、うまくいきませんでした。

追記(2017-01-17):
@takaxp さんの記事『Emacs 25.1 を EMP版で快適に使う - Qiita 』の “mac-auto-ascii-mode を使うと ASCII固定になる” で回避できました!

同じ記事にあった、入力モードに応じたカーソルの色変更の設定も自分好みに変えつつ追加。

(defun mac-selected-keyboard-input-source-change-hook-func ()
  ;; 入力モードが英語の時はカーソルの色をfirebrickに、日本語の時はblackにする
  (set-cursor-color (if (string-match "\\.US$" (mac-input-source))
			"firebrick" "black")))

(add-hook 'mac-selected-keyboard-input-source-change-hook
	  'mac-selected-keyboard-input-source-change-hook-func)

hook名が間違っていたので、編集リクエストを送信済みです。
(誤) selected-keyboard-input-source-change-hook
(正) mac-selected-keyboard-input-source-change-hook

P.S.
このためだけにemacs-develを購読するのもなあ。。

追記(2015-05-24):
mac-auto-ascii-modeを有効にすると、C-uが変になることが分かったので私は設定を削除しました。C-u C-cやC-u C-xすると、C-cやC-xに変わってしまう(ミニバッファから分かる)。

追記(2016-11-24):
emacs-mac-6.1 パッチでは直っているので、今は mac-auto-ascii-mode を有効にしています。