¿Cómo puedo evitar que la empresa complete números?


7

En el modo org, cuando escribo algunos números, la compañía siempre muestra la finalización del número como:

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

Estos números provienen de mis archivos de modo org.

Me gustaría desactivar la finalización del número de empresa. ¿Cómo puedo hacer esto?

Respuestas:


4

Esto probablemente proviene del back end de dabbrev. Puedes eliminarlo así:

(delete 'company-dabbrev company-backends)

8

Esto se puede resolver modificando los transformadores de la compañía con el siguiente 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)

Con este código:

  1. eliminar a aquellos candidatos que no sean ANSII.
  2. eliminar cualquier terminación que contenga números.
  3. eliminar cualquier candidato que sea más largo que 15 en el modo org.

Todo tipo de cosas se pueden personalizar.

¡Espero que esto ayude!


Aunque esta respuesta es buena, creo que compartir fragmentos de emacs es mucho más fácil si solo hacen una cosa, y específicamente lo que se pide. Probablemente podría eliminar todo el código que no necesito, sino como alguien que no es competente en y no se preocupa tanto por elisp compartir un método más limpio recudes la complejidad de mis .emacs en gran medida
rien333

-1

Puede configurarlo company-dabbrev-other-bufferspara nilque la compañía solo busque en el búfer activo:

(setq company-dabbrev-other-buffers nil)
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.