¿como configurar sublime 3 para ejecutar aplicaciones de consola en Yii?

 

Para ejecutar aplicaciones de consola con yii la sintaxis es la siguiente:

 yiic <command-name> <action-name> --option1=value1 --option2=value2

Nosotros estamos trabajando con un boilerplate llamado YiiBoilerplate

que básicamente es separar el lado publico (frontend) y el lado del administrador (backend). Ademas el boilerplate tiene diferentes archivos de configuración según en ambiente (enviroment) en el que estas trabajando.

Personalmente me agrada m'as el boilerplate Yiinitializr por ser mas sencillo de configurar.

Los directorios donde voy a trabajar para colocar los comandos de consola son:

proyecto_yii/console : aquí se encuentra el ejecutable que corre los comandos creados por nosotros.

proyecto_yii/console/commands/: aquí se encuentran los comandos que hemos creado.

Situado en el diretorio console ejecuto mis comandos de la siguiente manera:

 php -f yiic.php importcrawlers import

Para no estar cambiando entre el sublime text 3 y la terminal de linux, cree un archivo *.sublime-build para que al pulsar F7 se ejecute mi commando yii y así ver el resultado en la misma ventana de sublime.

Para hacer esto ir al menú “Tools->Build System y New Build System”
 


 

En el archivo que se abre escribir los siguiente:

 { "working_dir":"/home/peter/public_html/yooclas/console", "cmd": ["/usr/bin/php", "-f", "yiic.php", "importcrawlers", "import"], "file_regex": "^Parse error: .* in (.*?) on line ([0-9]*)", "selector": "source.php", }

working_dir: el directorio del proyecto yii.

Cmd: el comando que se ejecutara. Este elemento especifica la lista de cadenas que, combinadas, componen la línea de instrucciones. Si no se indica la ruta completa al programa externo, este debe ser visible en PATH. PATH es una de las variables de entorno del sistema operativo.

file_regex: Optativo. Expresión regular (tipo Perl) para capturar errores emitidos por cmd.

En mi caso en cmd puse el comando que quiero que se ejecute cada vez que pulso la tecla F7.

Guardar con el nombre que se desee yo le puse yii-importcrawler.sublime-build, en la ubicación que nos sugiere sublime: ~/.config/sublime-text-3/Packages/User/

Para empezar a unsarlo ir a “Tools->Build System” y elegir de la lista el nuevo “build” que creamos.



Ahora al ejecutar nuestro comando de consola de yii veremos el resultado de este.
 



Esto tiene la desventaja que cuando estas editando otra aplicación de consola el comando cambia.

Fuentes:

Archivos .sublime-build

 

http://sublimetext.info/docs/es/reference/build_systems.html

YiiBoilerplate

 

https://github.com/clevertech/YiiBoilerplate

Saludos.

Añadir nuevo comentario