mieki256's diary



2017/11/22(水) [n年前の日記]

#3 [lua][emacs] Emacs(NT Emacs)にLuaとlove2d関係のauto-completeをインストール

Lua関係の auto-completeパッケージを見かけたので試しにインストール。Lua用のソースを書く際に補完してくれるようになるっぽい。

環境は Windows10 x64 + NTEmacs 24.5.1。 _Lua-mode と auto-complete はインストール済み。

_rolpereira/auto-complete-lua.el: Auto-complete builtin Lua functions in Emacs
_rolpereira/auto-complete-love.el: Auto-complete LOVE functions in Emacs

それぞれzipファイルをDLして解凍。

以下のファイルやフォルダを、Emacsからパスが通ったところにコピー。
auto-complete-lua.el
auto-complete-lua-tests.el
lua-documentation
auto-complete-love.el
auto-complete-love-tests.el

~/.emacs に以下を記述。

(require 'auto-complete-lua)
;; (add-hook 'lua-mode-hook '(lambda ()
;;                             (setq ac-sources '(ac-source-lua))
;;                             (auto-complete-mode 1)))

(require 'auto-complete-love)
(add-hook 'lua-mode-hook '(lambda ()
                            (setq ac-sources '(ac-source-love))
                            ; Uncomment only if you're using `auto-complete-lua' (see below)
                            (push ac-source-lua ac-sources)
                            (auto-complete-mode 1)))

auto-complete-lua と auto-complete-love の両方を入れる場合、auto-complete-love側の設定だけをしておけばいいらしい。最初、両方の設定を書いてしまったら補完がちゃんと動かなかった。

参考までに、~/.emacs のLua関係の設定部分をメモ。
;; ----------------------------------------
;; lua-mode

;; This snippet enables lua-mode
;; This line is not necessary, if lua-mode.el is already on your load-path
;; (add-to-list 'load-path "/path/to/directory/where/lua-mode-el/resides")

(autoload 'lua-mode "lua-mode" "Lua editing mode." t)
(add-to-list 'auto-mode-alist '("\\.lua$" . lua-mode))
(add-to-list 'interpreter-mode-alist '("lua" . lua-mode))

(setq lua-indent-level 2)

(add-hook 'lua-mode-hook
          '(lambda ()
             (abbrev-mode 1)
             (electric-pair-mode t)
             (electric-indent-mode t)
             (electric-layout-mode t)
             ;; ||も括弧の補完の対象にする
             ;; (add-to-list 'electric-pair-pairs '(?| . ?|))
             ))

;; love2d love-minor-mode
(require 'love-minor-mode)

(require 'auto-complete-lua)
;; (add-hook 'lua-mode-hook '(lambda ()
;;                             (setq ac-sources '(ac-source-lua))
;;                             (auto-complete-mode 1)))

(require 'auto-complete-love)
(add-hook 'lua-mode-hook
          '(lambda ()
             (setq ac-sources
                   (append ac-sources '(ac-source-love ac-source-lua)))
             (auto-complete-mode 1)))
ac-sources に、ac-source-love と ac-source-lua を追加する形にしてみた。

ちなみに、love2d-minor-mode は以下で入手できる。

_ejmr/love-minor-mode: An Emacs minor mode for LOVE

以上です。

過去ログ表示

Prev - 2017/11 - Next
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project