Instalar Stylus en ArchLinux sin morir en el intento

Stylus es un pre-procesador de código CSS, el cual nos permite a nosotros trabajar de forma más simple en nuestro editor de texto y a continuación les explico las razones de mi afirmación.

No pretendo enseñar como funciona Stylus, sino mostrar algunos ejemplos y el método de instalación

Este es una hoja de estilos (style sheet) tal y como la conocemos:

body {
  font: 12px Helvetica, Arial, sans-serif;
}
a.button {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
}

Y esta sería la misma hoja de estilos creada con Stylus:

body 
  font 12px Helvetica, Arial, sans-serif

a.button
  -webkit-border-radius 5px
  -moz-border-radius 5px
  border-radius 5px

¿Dónde están las llaves? ¿A donde fueron los puntos y comas, los dos puntos? Al olvido, Stylus hace eso por nosotros.

Si estás empezando con CSS y HTML no es recomendable usar Stylus por el simple hecho de que puedes olvidar como es que funcionan las cosas realmente, pero si ya tienes tiempo en este mundo y quieres ahorrarte código y trabajo.. adelante.

Los programadores de Python encontrarán en Stylus algo muy similar a lo que están adaptados, pues solo se necesita indentar correctamente para que se haga la magia.

Instalación

Para que Stylus funcione tenemos que instalar Node.js el cual se encuentra en la rama Community, por lo que procedemos a hacerlo:

$ sudo pacman -S nodejs

Y posteriormente instalamos Stylus. La forma tradicional sería:

$ npm install -g stylus

Se instala bien, pero a mi no me funciona, por lo que resulta mucho más fácil instalar desde AUR:

$ yaourt -S nodejs-stylus

Como usar Stylus

Ok, ya tenemos instalado Node.js y tenemos instalado Stylus.. ¿Cómo lo usamos? Es simple. Digamos que tenemos un directorio con los siguientes ficheros:

- dir
-- index.html
-- style.css

Lo que tenemos que hacer es crear el fichero style.styl, que es en el que vamos a trabajar. En ese fichero podemos tener algo como:

body
	background-color #ffff
	font-size 12px

a.button
	color red
	padding 10px

Si guardamos o hacemos algún cambio no sucede nada, pues no estamos “compilando” nuestro fichero. Para compilarlo lo que hacemos es abrir un terminal en nuestro directorio (donde se encuentra el fichero style.styl) y ejecutamos:

stylus -c style.styl

Pero cada vez que guardamos el fichero style.styl habría que ejecutar el código, pero por suerte no es necesario, ya que si ejecutamos el mismo comando, pero añadiendo el parámetro -w (watch) sucede lo siguiente:

stylus -c -w style.styl 
  watching /usr/lib/node_modules/stylus/lib/functions/index.styl
  compiled style.css
  watching style.styl
  compiled style.css
  compiled style.css

O sea, automáticamente se compila el fichero.. ¿El resultado sería?

body{background-color:#fff;font-size:12px}
a.button{color:#f00;padding:10px}

Como pueden ver no solo nos crea nuestro código CSS, sino que elimina los espacios innecesarios para que nuestra hoja de estilos pese menos 😀

No solo eso, Stylus nos permite pasar ficheros en CSS a su formato y la forma en que podemos utilizar su forma de sintáxis es muy variada. Y esto es solo un adelanto. Así que los animo si les interesa, conocer un poco más a Stylus


5 comentarios

  1.   cyberalejo17 dijo

    Es con:

    $ sudo npm install -g stylus

    1.    elav dijo

      Pero ¿Por qué? Si solo quiero usarlo en mi sesión.. pero bueno, si el problema es ese.. 🙂

      1.    nano dijo

        En un principio está bien, pero Stylus se usa con distintos plugins a medida que avanzas, por ejemplo Nib o Stylus auto prefixer.

        Creo yo que cuando lo instalas con Yaourt no queda guardado en /usr/local/lib/node_modules y si trataras de importar y usar alguna de las librerías, te joderías xD

        Pasa que como te dije en el foro, Stylus se basa en usar librerías de forma transparente desde la terminal, es la esencia de este preprocesador, hace cosas como:

        stylus -u jeet -u rupture -u typographic -u nib -w style.styl

        Por decir algo (puedes tener un alias o una función o usar gulp o grunt, o lo que sea :3). Lo interesante de eso es que no te embasura el css de plano al compilar, sino que lo rellena “dinámicamente” a medida que dentro de tu código vas llamando las funciones y mixins de las respectivas librerías.

        En efecto te va a poner código plano que esté declarado (resets, clearfixes, etc) pero no te va a hacer fumarte por ejemplo las funciones span() de jeet si no las llamas y eso es amor puro x3

        Es todo un mundo y por eso te digo, instalándolo de esa manera no se en que ficheros caiga y no creo que puedas usar tan simple las extensiones porque cuando usas la línea de comandos, el –use flag va a buscar dentro de la carpeta de instalación de stylus, con node es node_modules y queda donde dije arriba, con Yaourt, NPI xD

  2.   usemoslinux dijo

    interesante!

  3.   usuario dijo

    Sugiero que hagan un tutorial Actualizado de como usar un número SIP para llamar desde la computadora a celulares… gratis

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.