[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Disable warning from irony for PHP files
From: |
John Mastro |
Subject: |
Re: Disable warning from irony for PHP files |
Date: |
Wed, 14 Oct 2015 12:51:04 -0700 |
Sanjeev Sariya <sanjeevsariya@gmail.com> wrote:
> I've irony, and company-irony mode added in my init.el, for which
> init.el looks like:
>
> (eval-after-load 'company
> '(add-to-list 'company-backends 'company-irony))
>
> (require 'irony)
> (add-hook 'after-init-hook #'global-company-mode)
> (add-hook 'c++-mode-hook 'irony-mode)
> (add-hook 'c-mode-hook 'irony-mode)
>
> When I open alpha.php, I get following warning:
>
> Warning (irony): Major mode is unknown to Irony, see
> `irony-supported-major-modes'.
>
> I know irony doesn't support php file. How can I disable irony to work
> while working with .php or any other language, or say restrict it to
> c, cpp, .h, .hpp files?
I'm guessing it's because `company-irony' is being added to the global
`company-backends'. That's harmless (it won't produce any results, so
another backend will be used), but you could instead configure things
like this to avoid the warning:
(require 'irony)
(add-hook 'after-init-hook #'global-company-mode)
(defun my-company-irony ()
(irony-mode)
(unless (memq 'company-irony company-backends)
(setq-local company-backends (cons 'company-irony company-backends))))
(add-hook 'c-mode-hook #'my-company-irony)
(add-hook 'c++-mode-hook #'my-company-irony)
The idea is that, instead of modifying the global `company-backends',
you give it a separate value in c-mode and c++-mode buffers and add the
`company-irony' backend there.
--
john