From 06d8b1d976f57c9516c2c41c06504a063dcfc4c1 Mon Sep 17 00:00:00 2001 From: alfa30 Date: Sun, 6 Jul 2014 05:22:19 -0400 Subject: [PATCH] Integra plugin 'pro' --- plugins/pro/pro.plugin.zsh | 131 +++++++++++++++++++++++++++++++++++++ 1 file changed, 131 insertions(+) create mode 100644 plugins/pro/pro.plugin.zsh diff --git a/plugins/pro/pro.plugin.zsh b/plugins/pro/pro.plugin.zsh new file mode 100644 index 000000000..3e4e5ab73 --- /dev/null +++ b/plugins/pro/pro.plugin.zsh @@ -0,0 +1,131 @@ +## Carga el directorio proyecto +local FPC=$HOME/.proyect_control +if [[ -f $FPC/path_folder ]]; then + + ## contiene el directorio del proyecto + export prod=$(cat $FPC/path_folder) + +fi + +pro () { + + if [[ $1 == "this" ]]; then + local actionstatus=true + pwd > $FPC/path_folder || local actionstatus=false + + if [[ $actionstatus == true ]]; then + echo "Ha sido fijada la carpeta de proyectos." + echo "Reinicie el terminal, para actualizar los cambios." + else + echo "No se ha podido fijar la carpeta de proyectos." + fi + fi + + if [[ $1 == "init" ]]; then + mkdir $FPC 2> /dev/null > /dev/null && + echo "Se ha creado correctamente el directorio de control de proyectos" || + echo "No se ha podido crear el directorio de control." + echo "Puede que ya exista el directorio [$FPC]" + fi + + if [[ $1 == "import" ]]; then + ## Ruta del directorio actual + local pimport=$(pwd) + ## Nombre del directorio + local nimport=$(basename $pimport) + ## Define el nombre del proyecto nuevo + local noutput="" + ## Define la ruta del proyecto nuevo + local poutput="" + + echo "[$pimport] $nimport" + + if [[ $prod == "" ]]; then + echo "Debe definir el directorio de proyectos, para poder importar un proyecto."; + else + if [[ $2 == "" ]]; then + if [[ -d $prod/$nimport ]]; then + echo "Ya existe un proyecto con este nombre, no se puede importar el proyecto." + else + noutput="$nimport" + fi + else + if [[ -d $prod/$2 ]]; then + echo "Ya existe un proyecto con este nombre, no se puede importar el proyecto." + else + noutput="$2" + fi + fi + + if [[ $noutput != "" ]]; then + poutput="$prod/$noutput" + + ## proceso de captura del proyecto + cd .. && + cp -r $pimport $poutput && + rm -rf $pimport && + ln -s $poutput $pimport && + cd $pimport && + echo "Se ha importado correctamente el proyecto $nimport a $poutput. y se ha creado un enlace simbólico a $pimport" || + echo "Ha ocurrido un error al importar el archivo." + + fi + + fi + fi + + if [[ $1 = "" ]]; then + echo -e "Usar: [cd] prod[\]" + echo -e "\tPermite mover al directorio de proyectos." + echo + echo -e "Las opciones a utilizar son:" + echo -e "\t\tSi se define el nombre del proyecto, se dirigirá hacia\n\t\t\tsu directorio." + echo + echo -e "Usar: pro