21
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

auto-complete環境で補完の大文字小文字を区別する

Last updated at Posted at 2012-12-28

全国100万人のEmacs・ニュービーのみなさまこんばんは。

みなみなさまもauto-completeを使って快適な補完ライフを享受されてることと存じます。

しかしRailsなんかでごりごりごりっとコードを書いてますと、Bookだったりbookだったりbooksだったりと、大文字小文字が入り乱れるコードになります。そんな環境では、小文字で出して欲しかったのに大文字が補完されたりして、たいへん不快な目に遭ひます。

この記事を参照、ではあるのですが、リンク先当時と違っていまのデフォルトは'smartです。

つまり、デフォルト値の定義はこんなふうになってます。

auto-complete.el
(defcustom ac-ignore-case 'smart
  "Non-nil means auto-complete ignores case.
If this value is `smart', auto-complete ignores case only when
a prefix doen't contain any upper case letters."
  :type '(choice (const :tag "Yes" t)
                 (const :tag "Smart" smart)
                 (const :tag "No" nil))
  :group 'auto-complete)

てなわけで、全体でこの挙動をnilにしてやりたければ、.emacsにこんなふうに書いてやればおkですね。

.emacs.d/init.el
(custom-set-valiables
 '(ac-ignore-case nil))

「Rubyでは無効にしたい… でも全体では'smartのままがいい…」なんてわがままさんもいらっしゃいますよね。僕のことなんですけれども。

そんな方にはこちら!

.emacs.d/conf/init-ruby.el
(add-hook 'ruby-mode-hook
          (lambda ()
            (make-local-variable 'ac-ignore-case)
            (setq ac-ignore-case nil)))

いえい。これでruby-modeなバッファでだけac-ignore-casenilになってくれます。めでたいですね。

21
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
18

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?