Como posso impedir que o modo empresa complete números?


7

No modo organizacional, quando digito alguns números, a empresa sempre exibe a conclusão do número, como:

20
20001 ----------- 1
200111 ---------- 2

Esses números vêm dos meus arquivos de modo organizacional.

Gostaria de desativar a conclusão do número da empresa. Como posso fazer isso?

Respostas:


4

Provavelmente isso está vindo do backend do dabbrev. Você pode removê-lo assim:

(delete 'company-dabbrev company-backends)

8

Isso pode ser resolvido modificando os transformadores da empresa com o seguinte código:

(push (apply-partially #'cl-remove-if
                      (lambda (c)
                        (or (string-match-p "[^\x00-\x7F]+" c)
                            (string-match-p "[0-9]+" c)
                            (if (equal major-mode "org")
                                (>= (length c) 15)))))
             company-transformers)

Com este código:

  1. remova os candidatos não ANSII.
  2. remova qualquer conclusão que contenha números.
  3. remova qualquer candidato com mais de 15 anos no modo organizacional.

Todos os tipos de coisas podem ser personalizados.

Espero que isto ajude!


Embora essa resposta seja boa, acho que compartilhar trechos do emacs é muito mais fácil se eles fizerem uma coisa, e especificamente a única coisa solicitada. Eu provavelmente poderia remover todo o código que eu não preciso, mas como alguém que não é proficiente em e não se importa muito para elisp compartilhar um método mais limpo recudes a complexidade dos meus .emacs muito
rien333

-1

Você pode definir company-dabbrev-other-bufferscomo nil, para que a empresa pesquise apenas no buffer ativo:

(setq company-dabbrev-other-buffers nil)
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.