Estoy tratando de configurar omni terminación para PHP en vim 7.3 con ctags 5.9 ~ svn20110310 en Ubuntu 12.04.1 (LTS) pero me encuentro con un problema muy extraño donde la terminación proporciona predicciones radicalmente diferentes para instancias de la misma clase.Omnicompletion deja de dar predicciones útiles
tengo los dos archivos siguientes:
// Foo.php
class Foo {
public function do_stuff() {
echo 'Working...';
}
}
// index.php
require 'Foo.php';
$f = new Foo();
$f->[cursor position 1]
$g = new Foo();
$g->[cursor position 2]
Cuando el cursor se encuentra en la posición 1 y pulse CTRL + XCTRL + O que comples la línea con do_stuff(
como hemos Esperaría. Pero cuando pulso CTRL +XCTRL +O en la segunda posición consigo una lista de predicciones que se inicia con key, next, rewind
. ¿Qué estoy haciendo mal?
Cuando presiona CTRL + X CTRL + O en la segunda posición, ¿está todo el código anterior (incluido el código válido '$ f -> [posición del cursor]')? –
Sí, absolutamente. '$ f -> [posición del cursor 1]' se convierte en '$ f-> do_stuff();' –
¿'Foo' implementa la interfaz' Iterator'? – philix