Fragmentos en expansión en modo evil-insert

9

Me acabo de mudar a Spacemacs desde vim y soy un novato completo con emacs.

No puedo entender cómo expandir yasnippets mientras estoy en modo evil-insert. Sé que yasnippet está disponible porque puedo elegir entre los fragmentos disponibles usando Spc i s. Sin embargo, me gustaría poder <Tab>expandirlos. ¿Qué me estoy perdiendo?

owise1
fuente
¿Has probado el modo empresa ? Creo que es muy útil cuando se trata de la finalización automática: tiene muchos backends diferentes y yasnippet es uno de ellos.
xuhdev
sí, spacemacs viene incluido con autocompletar y modo empresa. No estoy seguro de cuál está vigente y no estoy realmente seguro de cómo averiguarlo.
owise1
Use describe-mode(está <f1> mactivado en Emacs predeterminado) y busque en el primer párrafo (donde dice "Modos menores habilitados: ...").
npostavs
¡Gracias! dice que la compañía está habilitada y yas. curiosamente no veo cuadro desplegable de la empresa en modo con sugerencias al escribir y las yassnippets dont amplío
owise1

Respuestas:

11

M-/es el enlace predeterminado para expandir fragmentos no TAB. Puede descubrir esto Spc ?luego buscandoyas

owise1
fuente
Tengo una pregunta estúpida: ¿qué M-/significa? :)
aikeru
1
@aikeru no es estúpido. significa {opción} + /
owise1
Entonces, ¿ Mestá la tecla ALT en, digamos, una máquina Linux o Windows, verdad?
aikeru
1
Pienso que si.
owise1
Debería reasignar yas-expanda TABo no? Debe haber una buena razón para no hacerlo, ya que ese es el valor predeterminado, pero no lo entiendo. Si debo reasignar, ¿hay una opción para esto en Spacemacs?
Heisenberg
2

M-x yas-expand, puede C-h f yas-expandverificar qué tecla de acceso rápido está asignada.

companyes un marco de autocompletado que admite muchos backends. company-yasnippetpodría ser su backend. Si usa company-yasnippet, consulte https://github.com/company-mode/company-mode/issues/492

Uso yasnippets de forma independiente y asigno teclas rápidas globales M-jayas-expand

Chen Bin
fuente
0

Como puedo ver, Spacemacs no está usando el clásico yas-expand pero usa hippie expand que desencadena yas-expand:

M-/ runs the command hippie-expand (found in global-map), which is an
interactive autoloaded compiled Lisp function in ‘hippie-exp.el’.

 is bound to M-/.

(hippie-expand ARG)

:around advice: ‘ad-Advice-hippie-expand’

Try to expand text before point, using multiple methods.
The expansion functions in ‘hippie-expand-try-functions-list’ are
tried in order, until a possible expansion is found.  Repeated
application of ‘hippie-expand’ inserts successively possible
expansions.
With a positive numeric argument, jumps directly to the ARG next
function in this list.  With a negative argument or just SPC u,
undoes the expansion.
dzeruel
fuente