Instalar extensiones en Sublime Text 2

Sublime Text 2 es un editor de texto simpático que funciona en Linux, Mac y logo_sublimeText2Windows. El poder de Sublime Text 2 se encuentra en las extensiones o plugins: completado inteligente, integración con Git, manejo de archivos de proyecto, diff, entre otras delicias un programador sabrá agradecer.

Aunque  la versión de prueba funciona bien y sin restricciones, vale la pena pagar por Sublime Text2.

La primera vez que usé Sublime Text 2 fue una frustración completa para mi porque venia de usar IDEs como Netbeans y Visual Studio (malacostumbrado) y no entendía cómo instalar Plugins. Hice el presente tutorial para ayudar a comprender el funcionamiento del Package Control. Al final hay una lista de paquetes interesantes según mi modesta experiencia.

1. Instalar Sublime Text 2

Sublime Text 2 es facil de Instalar en Windows, Linux y OSX. No hay mucho que decir sobre la instalación. El problema en Sublime Text 2 es entender es el Package Control: no está activado desde la primera instalación y no hay indicios para los novatos acerca de su activación (a pesar de buscar con persistencia en el Menú).

2. Instalar el Package Control

Para activar el Package Control abrimos la consola usando el menú View > Show Console y en la caja de texto inferior pegamos lo siguiente:

import urllib2,os; pf=’Package Control.sublime-package’; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),’wb’).write(urllib2.urlopen(‘http://sublime.wbond.net/’+pf.replace(‘ ‘,’%20′)).read()); print ‘Please restart Sublime Text to finish installation’

Tal como vemos aquí:

 sublime text install package console

Luego presionamos Enter. Esperamos un momento. Ahora Sublime Text 2 nos pide reiniciar el programa. Finalmente hay un nuevo elemento en Preference > Package Control. Listo ya tenemos lo que queríamos

Otra manera de instalar el Package Control de manera artesanal y altas emociones se encuentra en: http://wbond.net/sublime_packages/package_control/installation
Para instalar los Plugins usaremos el menú oculto de Sublime Text 2 presionando Shift + Ctrl + P. En la caja emergente escribe “Install Package”, presiona Enter. Como resultado obtenemos una lista. Seleccionamos el paquete que nos interesa en la lista, esperamos el momento que dura el proceso y listo, ya tenemos la extensión instalada en Sublime Text 2.

  install package sublime text 2

Shift + Ctrl + P en Sublime Text 2

2. Paquetes de Sublime Text 2 recomendados

Hice una pequeña lista recomendando paquetes que puedes usar según mi experiencia:

SublimeLinter
Subraya los potenciales errores de un programa, muy útil para ahorrar tiempo detectando la falta de un punto y coma o el cierre de paréntesis.

 sublimelinter

SublimeLinter ayuda mucho.

Alignment
Formatear código rápido presionando Ctrl + Alt + a.

 SublimeAlignment

Mucho mejor y más claro.

FileDiffs
Compara archivos entre los Tabs actuales.

 Sublime FileDiffs

Diff Sencillo sin problemas.

Otros interesantes:

  • Autofilename  –> va autorcomplentando la url de los archivos img, css, js o cualquier otro que tengamos dentro de nuestro proyecto en Sublime Text.
  • Sidebarenhancements
  • Emmet –> Para probar si funciona, es tan sencillo como crear un archivo .html escribir div y pulsar la tecla tabulador: nos lo sustituirá por el siguiente código <div></div>.

Comando diff Comparar archivos en linux

 

Para comparar carpetas puedes utilizar el comando diff. A pesar de que el objetivo del comando es comparar archivos línea por línea, lo podemos utilizar para comparar el contenido de 2 carpetas.

El comando diff devuelve las diferencias entre dos archivos. Las diferencias aparecerán con el simbolo ‘< ‘o ‘>’.

< Indica el primer archivo (argumento de la izquierda)

> Indica el segundo archivo (argumento de la derecha)

Para utilizarlo basta ejecutar el siguiente comando

diff -ru carpeta1 carpeta2

Apenas descubrí que puedes especificar el parámetro -q para que no compare el contenido de los archivos

diff -ruq carpeta1 carpeta2

Tambien podemos utilizar el comando rsync para comparar carpetas. Esto tiene la ventaja de que puedes hacerlo con carpetas remotas, mediante ssh.
Para comparar una carpeta remota basta agregar el parámetro –dry-run o en su forma abreviada -n de la siguiente forma

rsync -avn /home/cirovladimir cirovladimir@192.168.0.3:/home/cirovladimir

Consejos y plugins para mejorar la seguridad en WordPress

Consejos y plugins para mejorar la seguridad en WordPress

WordPress Login


Hace unas horas hemos comunicado una noticia que no agradará a ningun usuario del CMS WordPress: un ataque usando la fuerza bruta está infectando blogs. Básicamente este ataque se basa en una lista de 1.000 usuarios y contraseñas comunes que intentan averiguar los datos de acceso al panel de administración del usuario principal (administrador) realizando una gran cantidad de logueos.

Continue reading

La mejor forma evitar problemas con versiones antiguas de Internet Explorer

Internet Explorer logo

Cuando empiezas a desarrollar una página web, pones todo tu esfuerzo y tu tiempo en el aspecto creativo, planeando y ejecutando el resultado que más deseas. No obstante, llega un momento durante el proceso en el que te ves obligado a dedicar cada vez más tiempo a adaptar tu trabajo a navegadores antiguos. Y eso es un fastidio, todos lo sabemos.

Continue reading

Polychart.JS, otra opción para tus gráficas Javascript

Los datos por si solos no son nada, tienen que interpretarse y presentarse para dar lugar a información y de la información derivar en el conocimiento. Una buena manera de conseguir esto es con gráficas. Las opciones para insertar gráficas Javascript en tus proyectos y webs son muchas pero hoy te traemos en Genbeta Dev otra más, porque cuantas más opciones, mejor. Esta vez se trata de Polychart.JS y la verdad es que tiene buena pinta.

 

Polychart.JS permite recibir datos tanto de archivos CSV como a través de JSON o AJAX, puedes mezclar distintos tipos de gráficas, con ejes y leyendas autogenerados, en una sola más grande e interaccionar a través de ellas gracias a su sistema flexible basado en eventos. La verdad es que los ejemplos que tienen en su web son muy espectaculares e intuitivos.

La documentación es extensa (aunque está algo dispersa) y si bien tiene una versión que llaman Public y es gratuita, esta sólo puede ser utilizada en proyectos no comerciales. Si no es tu caso, tendrás que pagar 99$ (que tampoco es mucho) por su versión Commercial (aunque tienen diversos descuentos para startups y tal).

Es un mundo, el de las gráficas Javascript, muy competido pero nunca está de más conocer nuevas alternativas como este Polychart.JS.

Vía e imagen | Polychart.JS

El editor vi de linux

El editor vi

vi es un editor de texto elemental que conviene conocer porque a veces es el único a nuestro alcance.

Para aclararse con vi, tienes que tener en cuenta que vi puede encontrarse en dos estados o modos:

  • En el modo de comandos, vi está esperando que le des alguna orden (por tanto, interpreta lo que escribas como órdenes).
  • En el modo de edición, vi está esperando que escribas el texto del fichero (por tanto, interpreta lo que escribas como texto).

Cuando entras en vi, está en modo de comandos. Para pasar al modo de edición puedes pulsar i (insertar), a (añadir), o (añadir una línea). Para pasar al modo de comandos, puedes pulsar Escape o Suprimir.


Comandos más habituales de vi

 
comando descripción
i insertar antes del cursor
a añadir detrás del cursor
o añadir una línea en blanco
x borrar un carácter
j borrar el final de línea (une dos líneas)
dd borra la línea completa
u deshacer la última edición
:q salir
:q! salir sin guardar
:w guardar
:wq guardar y salir
:set nu muestra números de línea
:set nonu oculta números de línea
:n copy m copia la línea n detrás de la línea m
:n1, n2 copy m copia desde la línea n1 hasta la línea n2 detrás de la línea m

Cómo ajustar un diseño web html a explorer+firefox+opera+chrome

Cómo ajustar un diseño web html a explorer+firefox+opera+chrome

Como buenos diseñadores web que somos (o pretendemos ser), nuestro objetivo debe ser que una web se vea, si no exactamente igual en todos los navegadores (misión casi imposible por definición), al menos sí que no se note la diferencia o, cuanto menos, que no se descuadre nada.

Los que nos dedicamos a hacer webs llevamos años lidiando con este problema: cuadrar un diseño web en todos los navegadores de internet. El caso es que todos los navegadores web siguen unas normas estándar para interpretar el código HTML, aunque siempre hay pequeñas variaciones entre unos y otros. Sin embargo, Internet Explorer es, de todos, el que más se salta a la torera las reglas. Esto resulta muy tedioso a la hora de ajustar un diseño.

Hemos llegado a ver diversas formas de hacer ciertos “apaños” para solucionar este grave problema que viene generado, principalmente, por Internet Explorer. Cabe decir que las últimas versiones del Explorer han corregido ya algunas cosas flagrantes, pero, aún así, siguen habiendo otras que siguen haciendo descuadrar muchos diseños. Apaños del estilo de usar un javascript para detectar qué navegador usamos y, en base a eso, cargar una CSS o otra, o un HTML u otro. Esto es una solución bastante chapuza, aunque bastante extendida por aquello de que no había otra solución conocida mejor. Uno al final aprende qué tipo de cosas debe evitar al hacer una web (aquellas que resultan incompatibles o hacen saltar chispas en el Internet Explorer).

Una de las máximas a seguir para hacer una web lo más compatible posible (visualmente hablando) es la de la sencillez de código. Cuanto menos código HTML resultante tengamos, menos posibilidades de que algo casque. Es decir, si tenemos muchas capas anidadas o muchas tablas anidadas tendremos muchas posibilidades de que no se vea igual en todos los exploradores. También hay que tener en cuenta que hay que definir cuanto menos mejor: los altos y los anchos de partes del diseño de la web. Suele ser común marcar una div para que sea de ancho 100px y dentro colocar una serie de divs de ancho 100px: esto no es necesario. La div por defecto se expande en horizontal al máximo: si la div de fuera se ha fijado a 100px, la de dentro, sin decirle nada, alcanzará 100px. Esto es cierto para todos los objetos de tipo block, a excepción de las tablas (que habría que especificar un width=”100%”). Esto es muy práctico para ajustar los diseños, pues retocando podemos llegar a paradojas del tipo “el contenido es más grande que el contenedor” y cada navegador solucionará este problema de un modo distinto, presentando resultados distintos.

En segundo lugar, intentar hacer un diseño ajustable, que su diseño no dependa de cuadrar al pixel alturas y anchuras, es decir, que la web pueda crecer mínimamente si lo requiere en algunas partes. Esto puede ocurrir, por ejemplo, cuando se representa un texto en la web, pues no todos los exploradores renderizan igual el texto: Un párrafo de Arial 12px no se representa exactamente igual, es posible que los ajustes, los espacios, los justificados, etc, se calculen de diferente manera. Recordemos también que es posible que un tipo determinado de letra no esté instalada en todos los ordenadores, lo que hará que el navegador coloque otra fuente lo más parecida posible. Inevitablemente, si nuestro diseño depende de que la palabra del menú “inicio” sea exactamente de 47px de ancho por 12px de alto, en muy pocos ordenadores se verá bien.

En tercer lugar: tener en cuenta que los navegadores ponen tamaños y márgenes por defecto para todas las etiquetas, y no tienen por qué cuadrar entre ellos. Por ejemplo, las etiquetas H1, H2, P, etc, suelen tener unos tamaños de letra, interlineado, indentado y márgenes preasignados por el navegador. La solución es simple: definir en la CSS qué fuente, tamaño, interlineado y márgenes queremos que represente exactamente la etiqueta asignada.

En cuarto lugar, o quizás debiera ser el primero, tenemos que asegurarnos que nuestro código HTML está impecable. El error más grave que podemos tener es estar horas ajustando un diseño que en realidad tiene las etiquetas HTML mal cerradas. Si un navegador se encuentra en la tesitura de representar un código con etiquetas mal cerradas, nos podemos encontrar que internamente él intenta arreglarlo. Ni que decir tiene que cada navegador lo “arreglará” de diferente manera. Podemos caer en el error de pensar que nuestra web está perfecta porque se ve bien en un sólo navegador. Para verificar que tenemos las etiquetas bien puestas y además asegurarnos que nuestro HTML sigue un estándar, nada mejor que validar nuestro código aquí: http://validator.w3.org

Si hemos cumplido todo lo anterior y nos sigue descuadrando la web en diferentes navegadores, entonces conviene saber qué cosas son típicas de incompatibilidades y cómo arreglarlas.

Vamos a ir recopilando errores típicos y sus soluciones.

1- En IE: Una DIV vacía no puede reducirse en altura. Parece haber una altura mínima insalvable.
Origen del problema: IE coloca en las DIV vacías un espacio en blanco para gestionarlas. Si la altura que le hemos indicado es menor que la que ocuparía, por ejemplo, una letra ahí dentro, la capa se expandirá para dar cabida al espacio en blanco.
Solución: {overflow:hidden;}

2- En IE: Un TD de una TABLA parece tener una altura mínima insalvable.
Idem caso anterior.

3- En IE: No aplica un estilo que empieza por “_”
Origen del problema: IE no reconoce el caracter “_” para los estilos CSS. Lo ignora.
Solución: no colocar nombres de estilo con “_”

4- En IE: no se aplican los tamaños mínimos o máximos: min-height, min-width, max-height, max-widh. No se reconoce esta propiedad CSS.

5- En IE: una capa no se acopla a su contenido, se queda detrás, flotando.
Origen del problema: suele pasar con contenidos float y cuando la capa no tiene altura definida.
Solución: Darle un alto mínimo a la capa, pero definido: por ejemplo {height:5px;} Si no tiene {overflow:hidden;}, la capa se acoplará a su contenido (aunque si tiene contenido vacío, tendrá una altura de 5px)

6- En IE: Los paddings y los margins los contabiliza distinto del estandar.
Solución: podemos aprovechar el bug nº3 de IE en nuestro favor, colocando un estilo o una propiedad que empiece por “_” para que sólo la aplique IE.

Ejemplo:

.capa1 {
padding: 5px;
width: 30px; /* en estandar, el tamaño real será 30 + 5 +5 = 40px; */
}

._capa1 {
width: 40px; /* en IE, el padding no modifica las dimensiones */
padding: 5px;
}

<div></div>

/* -- ".capa1" se aplicará en los navegadores estándar -- */
/* -- "._capa1" IE, leerá ".capa1", con lo que sobreescribirá ".capa1" -- */
/* -- "._capa1" para los estandar es otro nombre de estilo, un estilo que no usaremos -- */

 

Mismo ejemplo, distinta solución:

.capa1 {
padding: 5px;
width: 30px; /* en estandar, se aplica este tamaño */
_width: 40px; /* en IE, se está sobreescribiendo el widht de 30px */
}

<div></div>

 

Esta segunda solución parece la más rápida y limpia. Sin embargo, puesto que “_widht” no existe como propiedad, estrictamente hablando nuestra CSS es errónea (aunque funcione). No pasaría un validador de CSS. Por ello, la solución más limpia y correcta sería la siguiente:

 

.capa1 { /* colocamos aquí todas las propiedades típicas, segun el estándar */
padding: 5px;
width: 30px;
}

._capa1 { /* en IE, se sobreescribirá sólo esta propiedad */
width: 40px;
}

 

Como veis, este “apaño” sirve para diferenciar qué partes de la CSS tiene que sobreescribir Explorer y cuáles son comunes, siendo útil para diversos casos, aunque debe de ser este el último recurso.

SourceTree ya disponible para Windows, cliente completo para usar Git y Mercurial

Ya está disponible la versión final de SourceTree para Windows. Después de un par de semanas que muchos de los pioneros que se apuntaron han estado probando la versión preliminar, ya es posible descargar la versión final de forma pública desde la web de Sourcetree.

Para el que no conozca Sourcetree, como ya comentamos, es probablemente uno de los mejores clientes para gestionar repositorios Git o Mercurial (hasta ahora sólo en Mac). Ideal para los principiantes teniendo a mano los comandos más comunes: create, clone, commit, push, pull o merge. Todos disponibles en un par de clicks y guiados por un entorno gráfico que siempre ayuda. Podemos conectarnos a repositorios locales de Git o Mercurial y remotos como Github o Bitbucket.

Sourcetree commit pull clone

Pero no deja de ser una herramienta para usuarios avanzados de Git para revisar todos los cambios de los repositorios, manejar de forma sencilla los distintos branch de desarrollo o visualizar claramente cada modificación en los gráficos de cada rama. Sin olvidar muchos comandos como rebase, stash, shelve,.. Por supuesto, los harduser de git pueden lanzar su línea de comandos y tenerlo como apoyo gráfico.

Cómo hacer un backup con los programas básicos

Cómo hacer un backup con los programas básicos

 

backup

Si eres de los que suelen trabajar de manera intensiva con tu ordenador, coincidirás con nosotros en que es eminentemente necesario hacer backups o copias de seguridad de tu información de manera frecuente. Conservar siempre un duplicado de nuestros archivos más importantes es la única solución para mantenerlos a salvo ante cualquier desastre. Para ello, puedes almacenar de forma manual todos los archivos que vas generando (no lo olvides, siempre por duplicado), pero lo cierto es que existen otras fórmulas más cómodas que nos permiten hacer el backup de manera automática. Bastará con que elijas un soporte (pendrive, disco duro externo, CD/DVD…) y selecciones un programa que te permita hacer la copia de seguridad con garantías. De hecho, existen múltiples propuestas de software que podrás descargar de manera gratuita a través de Internet. A continuación, te ofrecemos 5 propuestas o programas básicos para hacer un backup.

backup 01

1) FBackup. Junto a otras que también veremos en este artículo, FBackup es uno de los programas más utilizados para hacer copias de seguridad. Se trata de una herramienta especialmente recomendada para usuarios que no están habituados a utilizar este tipo de programas. Cuenta con una interfaz bastante sencilla y permite al usuario elegir en qué espacio o soporte quiere guardar la copia de seguridad, seleccionar qué contenidos y de qué manera quiere guardarlos (por ejemplo, a través de un ZIP que comprima todos los archivos). Finalmente, el usuario también podrá programar fácilmente cada cuándo quiere hacer un respaldo, pudiendo seleccionar la modalidad automática (para olvidarte de ello) o la manual (ideal para usuarios responsables). Puedes descargar el programa de forma gratuita a través de su página oficial.

backup 02

2) Cobian Backup. Y aquí tenemos otra herramienta sencilla y práctica para hacer y gestionar copias de seguridad. Lo mejor de todo es que a parte de configurar todas las opciones para obtener un backup, el sistema puede ser configurado como una aplicación que se ejecuta en segundo plano para no molestar al usuario mientras está trabajando o realizando otras gestiones. Es compatible con Windows Vista, XP y 2000. Solo notarás algún retraso cuando la aplicación está tratando de gestionar archivos de cierto tamaño (1 GB, por ejemplo). Por lo demás, verás que Cobian copia archivos y carpetas en formato original, sin comprimir, lo que nos asegura que no se ha dañado ningún archivo durante el proceso. Descárgalo desde la página oficial de Cobian.

backup 03

3) Idle Backup. La ventaja de este otro programa es que aprovecha los momentos en los que el CPU está inactivo para hacer copias de seguridad de los documentos más importantes. De esta manera, el funcionamiento del ordenador no se verá comprometido en absoluto por las operaciones de este programa. En cualquier caso, podemos indicarte que el proceso automático nunca llega a ejecutarse cuando el ordenador se está utilizando, a no ser que pidamos una copia manual. El programa trabaja sobre una copia de seguridad completa (la que se hace al principio) para luego ir incorporando aquellos archivos que se han modificado. Como es lógico, el usuario podrá seleccionar el período, las carpetas de origen y destino. La herramienta no permite configurar algunas opciones extra o filtros para configurar las copias. Puedes descargarla de manera gratuita.

backup 04

4) PureSync. Y aquí tenemos otra herramienta gratuita y compatible con el sistema operativo Windows (7, Vista y XP), capaz de guardar y sincronizar todos los contenidos que vamos almacenando en nuestro ordenador. El programa permite guardar dos tipos de sincronización: unidireccional (pasar archivos de una carpeta a otra) y bidireccional (entre dos carpetas). Presenta una interfaz bastante sencilla, que permitirá a los usuarios poco acostumbrados al uso de este tipo de herramientas, utilizarla PureSync sin demasiados obstáculos. Cuenta con casi todas las prestaciones necesarias para configurar la sincronización, aunque si con las opciones que aquí se presentan no tienes bastante, podrás descargar una versión Premium que sí tiene coste añadido. De momento, puedes ir descargando y probando PureSync gratis.

backup 05

5) Fiabee. Y terminamos con un servicio que hará las delicias a los amantes del almacenamiento en la nube. Fiabee es un nuevo servicio que recoge el testimonio de otras herramientas como Dropbox, aunque en este caso estamos ante una empresa de origen español que nos permite sincronizar las carpetas de nuestro ordenador automáticamente, a través de copias de seguridad que van actualizándose de manera frecuente. El servicio es gratuito y ofrece 2 GB de espacio, aunque tendremos la opción de conseguir 3 GB si logramos invitar a cinco amigos más. En cualquier caso, la cuenta premium nos permite acceder a espacio ilimitado por 5 euros al mes. Para empezar a probar el servicio accede a Fiabee.com.