Mostrando las entradas con la etiqueta vim. Mostrar todas las entradas
Mostrando las entradas con la etiqueta vim. Mostrar todas las entradas

martes, 15 de octubre de 2013

Tutorial Java en Linux Introduccion

Tengo pensado traer un nuevo lenguaje de programación al sitio y uno de ellos es Java,en las siguientes entradas haré algunos tutoriales de lenguajes de programación que no he traído al sitio y tenia pensado preguntar que lenguaje les gustaría que hiciera tutoriales,pero como no hay mucha respuesta me basare en las estadísticas aunque se caiga el poco SEO que queda,asi que en los próximos días veremos nuevos lenguajes en el sitio y basado en la respuesta que vea dejare alguno.

Como no es un tutorial muy propio del mismo lenguaje no voy a entrar en detalles muy técnicos,Java es un lenguaje diseñado por Sun Microsystems cuenta con una implementacion un tanto libre llamada OpenJDK que tiene una licencia GPL con linking exception,así que para los amantes de lo libre pueden usar OpenJDK para programar.

OpenJDK es la versión libre de JDK(Java Development Kit) es el kit de desarrollo para Java,el cual se debe instalar para poder usarlo.

Otra ventaja que tiene Java es que es multiplataforma por lo cual si hacemos algo en Windows lo podemos traer a Linux(usando las librerías especificas) por ejemplo,solo que el otro lado de la modena de esto es que Java tiene su propia maquina virtual JVM(Java Virtual Machine) la cual hace una doble ejecución,primero la maquina y luego la ejecución del código en la maquina,ademas esto se traduce en bytecode para que lo lea la JVM y luego la ejecución en el sistema,es algo así como en Lua.

Otra cosa que hay que tener en cuenta es que Java es puro OPP,Programación Orientada a Objetos,la cual en mi punto de vista es muy lenta en java ya que son variables de objetos de variables de variables de variables de variables,por lo cual veremos mucho algo como:

var.var.var.var.var();

Es una opinión muy propia,pero la pueden tomar en cuenta.

Java es muy bueno para aprender ya que es un lenguaje de programación total muy popular por lo cual podremos crear programas y aplicaciones profesionales.

Bien vamos a comenzar:

Primero instalamos Java,en Ubuntu podemos instalar Java 7 con este comando:

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

sudo apt-get install oracle-java7-installer

O OpenJDK con:

sudo apt-get install openjdk-7-jdk

Para otros sistemas googlen.

Hola Mundo,este programa es muy básico el cual consta en mostrar en la salida estándar(consola) el mensaje Hola Mundo,vamos a verlo y en seguida lo explico:

Primero que nada abrimos nuestro editor de texto,yo uso vim pero si necesitamos hacer algo mas rápido o con ayuda les recomiendo instalar eclipse.

Pero en este tutorial vamos a usar un editor de texto común,primero que nada abrimos nuestro archivo,en mi caso:

Desde terminal.

vim hola.java

O por ejemplo con gedit(un editor grafico):

gedit hola.java &

El nombre del archivo es el nombre de la clase,el nombre principal,así que vamos a definir nuestra clase y adentro nuestro constructor:


public class hola {
    public static void main(String[] args) {
        System.out.println("Hola Mundo");
    }
}

Ahora necesitamos compilar a bytecode:

javac hola.java

Y por ultimo ejecutamos:

java hola



Y listo Hola Mundo,como ven al ejecutar java no necesitamos usar el nombre completo del archivo creado que seria hola.class,vamos a explicar linea a linea ya que es un poco diferente a los programas de script que hemos visto:


public class hola { // Crea una clase llamada hola de instancia publica

public static void main(String[] args) { // Iniciamos la clase con el metodo(funcion) main

public // Instancia publica

static // Modificador static,se usa para poder usar metodos de un objeto sin definirlo

void // Tipo de retorno de la funcion en este caso ninguna(vacia->[void])

main // Metodo principal que inicia el programa principal y en este caso la clase hola

(String[] args) // Es el parámetro que le pasamos a la función main o en este caso que nos pasa el sistema,lo que esta adentro es un vector compuesto de variables tipo string,en otras palabras es un array de strings,el cual contiene los parámetros pasados desde la terminal o desde el Path del ejecutable.

System.out.println("Hola Mundo"); // Esta es una función de System que a la vez entra a out que a la vez llama a println al cual le pasamos un parámetro que en esta ocasión es el texto Hola Mundo:


Vamos a comenzar con las variables,esta estructura siempre la vamos a ver:


public class clase {
    public static void main(String[] args) {
        // Codigo
    }
}


En java podemos escribir comentarios con // o podemos escribir comentarios en varias lineas con (/**/):


// Comentario

/* comentarios */

/************
  
 Comentario  
    
*************/


En java debes escribir el tipo de variable antes de iniciarla,los tipos mas comunes con:

boolean => true o false

int => Numero entero

long => Numero entero largo

short => Numero entero corto

float => Numero de coma flotante de precicion simple

double => Numero de coma flotante de doble precision

char => Carácter

String => Cadena

void => Nada


Por ejemplo:

boolean no = false;

int x = 100;

long y = 143435435675;

short z = 1;

float xy = 10.1;

double yx = 123213.2421421421;

char a = '\u0061';

String cadena = "Hola Mundo";

En el caso de los caracteres son caracteres Unicode,los primeros son de ASCII pero también podemos poner directamente un carácter.

char a = 'a';
También hay que recordar que en Java debemos terminar cada linea con punto y coma.

O un numero que se pasara a carácter:


for (int i = 48;i < 91;++i)
{
    System.out.printf("%c\n",i);
}

En el caso de los argumentos usamos un vector de strings,es algo que veremos si se queda java,pero podemos ver un array de una dimensión (vector o arreglo unidimensional
) de strings fácilmente:

public class hola {
    public static void main(String[] args) {
        String[] abs = new String[2]; // Creamos un vector de strings
        abs[0] = "Hola"; // <- Comenzamos el valor desde cero
        abs[1] = " Mundo";
        String[] abc = {"Hola"," Mundo"}; // <- Esto equivale lo mismo
        System.out.println(abs[0]+abs[1]);
        System.out.println(abc[0]+abc[1]);
    }
}

Vamos a emular lo que nos pasa la linea de comandos:


public class hola {
    public static void main(String[] args) {
        String[] abs = new String[2]; // Creamos un vector de strings
        abs[0] = "Hola";
        abs[1] = " Mundo";
        String[] abc = {"Hola"," Mundo"}; // <- Esto equivale lo mismo
        ver(abc); // Pasamos el vector
    }
    static void ver(String[] args) { // El parametro es el mismo tipo que le pasamos arriba
        for (int i = 0;i < args.length;i++) // Lo recorremos
        {
            System.out.println(args[i]);
        }
   }
}

Vamos a verlo en uso:


public class hola {
    public static void main(String[] args) {
        for (int i = 0;i < args.length;i++)
        {
            String ar = String.format("Argumento %d : %s\n",i,args[i]);
            System.out.print(ar);
        }
    }
}

Podemos ejecutar así:



java hola Hola Mundo

Eso es una pequeña introducción a lo que seria Java,así que veremos en unos días si lo dejo.
Leer más...

miércoles, 2 de octubre de 2013

Tutorial Vim

Vim y es un editor de texto tipo consola muy poderoso,solo que las personas que están acostumbradas a las interfaces de Gtk,Tk,Qt o cualquier otro,se les puede hacer raro como usarlo.

En esta entrada se pretende entender como funciona y dejar de depender  de las interfaces gráficas,ya que un editor de tipo consola como este o como nano,joe se pueden usar en shell,osea desde una conexión ssh o desde la tty lo que nos vendrá muy bien en distintas situaciones.

Como dije aprenderemos como usarlo como editor por defecto,o preferido,ya que tiene grandes ventajas.

Programar scripts para el sistema desde la shell,cuando no tengamos entorno de escritorio.

Configurar el sistema cuando no tengamos entorno de escritorio,muy bueno para instalaciones de linux como gentoo,arch o FreeBSD.

Otra cosa que es muy propia para mi es que al usar este editor sin extensiones de lenguaje,aprenderemos mas a programar,esto lo digo y es muy propio porque cuando usamos un IDE,solo ponemos una letra y tab y nos autocompleta toda la sintaxis de una orden del lenguaje de programacion(claro ejemplo java en IDE),tal vez sea mas practico a la hora de velocidad,pero siento que hace a uno mas flojo.

Como dije vamos a aprender lo básico,hay algunas cosas mas practicas para cuando ya sabemos la básico,lo cual podemos verlo en este enlace.

Tutorial

Primero que nada debemos instalarlo en nuestro sistema

Ubuntu/Debian

sudo apt-get install vim

Gentoo

sudo emerge -av vim

FreeBSD

sudo pkg_add -rv vim

Son los sistemas que uso,para otros solo usen el comando de instalación de su sistema.

Ahora podemos iniciar a usarlo de dos maneras:

Abrimos una terminal(si estamos usando un entorno de escritorio).

La primera es desde su propio explorador ya que tiene un explorador propio,podemos escribir:

vim ~

Y nos abre su explorador en nuestro home,pero eso es un poco mas avanzado asi que nos concentraremos en la otra forma.

Si entraron con el comando anterior,para salir:

ZZ

La segunda es usar el explorador de archivos de bash(unix) con los comandos cd,ls,etc.

Nos damos locación en una carpeta,por ejemplo:

cd ~/Documentos

Y escribimos vim.

Al hacer esto veremos una pantalla como esta:



Ahí estaremos en modo comando,en el cual teclearemos todos los comandos que veremos.

Para comenzar a escribir tecleamos:

i

Esto es lo mas común a la hora de iniciar un nuevo archivo.

Para guardar nos ponemos en modo comando de nuevo de la siguiente manera:

boton esc

o

ctrl + c

Luego escribimos:

:wq nombre archivo

Por ejemplo si quisiéramos que se llamara hola.lua,lo haríamos así:

:wq hola.lua



Bien ahora los comandos de manejo de archivo:

:w => Salvar (posibilidad de añadir nombre del fichero).

:q => Quitar(si no tocamos).

:q! => Quitar(si tocamos), no guarda los cambios.

ZZ => Salvar y quitar.

:wq => Salvar y quitar(posibildad de añadir nombre del fichero).

:w! => Salva(en archivos de solo lectura),esto lo vimos en los permisos de unix,podemos quitarle los permisos de escritura desde bash con chmod -w archivo.

Ahora que ya tenemos un archivo,la próxima ves podemos abrir el archivo así:

vim hola.lua # ejemplo de archivo


Ahora estamos en modo comando,podemos comenzar a escribir con i,como arriba pero tenemos mas opciones:

Escribe me refiero a donde puedes comenzar a escribir.

i => Escribe antes de la letra señalada.


I => Escribe al principio de la linea señalada.


a => Escribe después de la letra señalada.


A => Escribe al final de la linea señalada.


o => Crea una nueva linea para escribir.


O => Crea una nueva linea para escribir(antes).

De esa manera podemos comenzar a escribir de una buena manera.

Vim cuenta con la función undo,algo que es inestable en nano,lo cual es muy bueno ya que nos permite deshacer los cambios que hayamos hecho,para ello escribimos en modo comando la letra:

u

Eso seria lo que seria ctrl + z,ahora lo contrario que es lo que seria ctrl + y,lo hacemos escribiendo en modo comando un punto:

.

También contamos con opciones de borrado en modo comando:

x =>  Para borrar el carácter siguiente a donde esta la letra señalada,seria el equivalente a supr.

X => Para borrar el carácter antes de  le letra señalada,seria el equivalente a del.

Y también tenemos opciones de copy and paste,en modo comando:

dd => Corta la linea señalada.

P => Pega una linea antes.

p => Pega una linea despues.

yy => Copia la linea señalada.

También podemos copiar o cortar varias lineas,solo debemos señalarlas antes,por ejemplo cortar 5 lineas:

5dd

o cortar 3:

3yy

Esto también vale para x(para cortar palabras).

Por ejemplo cotar una palabra de 3 letras:

3x

O borrar cualquier palabra se puede en modo comando con:

dw => Se borrara la palabra señalada.

Algo que también es muy bueno en vim es que nos podemos dirigir a una linea en especifico,por ejemplo si programamos un script y nos da error en la linea 345,solo tenemos que hacer esto para dirigirnos a ella:

En modo comando:

:345

Podemos poner cualquier numero de linea del archivo,pero también contamos con caracteres especiales:

:$ => Final del archivo.

:0 => Principio del archivo.

En nano por ejemplo es muy fácil buscar algo en un archivo con ctrl + w,en vim solo tenemos que escribir esto en modo comando:

/palabra_a_buscar

Por ejemplo buscar funciones en un script en python,como en python las funciones se declaran con la palabra def seguida de un espacio,hacemos lo siguiente:

/def\s


Aquí buscamos la palabra def seguida de un espacio(\s en regex es espacio),cuando tengamos la palabra presionamos enter,y la busca si no la encuentra nos dirá,si encuentra mas de una nos desplazamos con la tecla:

n => A la siguiente coincidencia.

El comando anterior busca hacia adelante de donde estamos con el cursor de vim,si queremos buscar hacia atrás usamos el  signo ?:

?def\s

Si queremos buscar desde la primera linea estemos donde estemos, usamos primero el simbolo ^,que quiere decir inicio:

/^def\s

Por ultimo,si queremos remplazar una palabra podemos usar este comando que es al estilo perl:

:linea_inicio,linea_final, s/palabra/remplazo/g

La g del final se usa para que recorra toda la linea,si queremos remplazar la palabra en todo el archivo usamos:

:1,$ s/palabra/remplazo/g

Por ejemplo remplazar print,por say en un script en perl:

:1,$ s/print/say/g

Faltan muchísimas cosas ya que vim es un editor con mucha potencia,por ejemplo insertar texto mezclando archivos,convertir a hexadecimal,octal,etc ejecutar ordenes de la shell,encriptar,etc,pero de momento es todo :D.
Leer más...

martes, 19 de febrero de 2013

Cambiar numero de espacios de tabs en vim

Las tabs o tabulaciones para la identacion de un código no en si son un numero de espacios como lo menciono en el titulo,ya que es un solo espacio(algo grande) y es muy pero muy molesto este tipo de cosas, en Python por ejemplo que tiene que ir nuestro código identado para funcionar bien y es algo de lo que mas me molesta de python(en serio odio esta tonteria de identar) y bueno en ocaciones he duplicado el tiempo de codificar por estar buscando los espacios o tabulaciones que no están bien hechas,pero lo bueno es que este "dolor de muelas" lo podemos evitar  remplazando los espacios que usamos en las tabulaciones por espacios reales,que reconozca sea vim,nano,joe,eclipse,gedit,geany,etc sin que haya problemas por las diferentes tabulaciones que usa y en esta ocasión lo haremos en vim,para que nuestros codigos python funcionen correctamente y el código de otros lenguajes como Perl o javascript se vea mas bien:

Tutorial

Primero necesitas vim y un ~/vimrc en tu home

Como somos unixeros o usamos Linux/BSD/etc nuestro vimrc debe ir en nuestro $HOME asi que verificamos con este comando


clear; cat ~/.vimrc 2>> /dev/null >> /dev/null; if [ $? == 0 ]; then echo "Si tienes vimrc :D"; else echo -e "No lo tienes :(\nSigue el tutorial de Tiempo de Tux :D"; fi
Bien si no lo tenemos solo debemos copiar la configuración de ejemplo

Con este comando :

 cp /usr/share/vim/vim73/vimrc_example.vim ~/.vimrc
Y listo :D

Ahora a lo bueno,para cambiar la tabulacion por espacios solo basta con añadir esto hasta abajo del .vimrc

Editamos :

vim ~.vimrc

Y añadimos :

Para cambiar espacios por tabulaciones:

set expandtab
set tabstop=4

En 4 es el numero de espacios en vez del tab(a mi me gustan 4)

También para cambiar el numero de espacios que se crean automaticamente a la hora de hacer una funcion,un bucle o una estructura selectiva,añadan :

set shiftwidth=4

Y si no tenían .vimrc les recomiendo activar la numeración y la sintaxis y el plugin para identacion:

Abajo de esta estructura selectiva:
if &t_Co > 2 || has("gui_running")
Añadan:

syntax on
filetype indent plugin on
set number
Y listo :D

Antes:

Con tabulaciones predefinidas:



Después de cambiar tabs por espacios definidos por nosotros:

Creo que se veía mejor antes :P

Bueno,el hecho es que podemos definir cuantos espacios queremos :D

Referencia : wiki.python.org/moin/Vim
Leer más...

viernes, 9 de noviembre de 2012

Programar en Perl desde Vim Linux/FreeBSD

En esta ocasión vamos a aprender a escribir en Perl de una manera muy buena y si usar pesados IDE's,lo que vamos a hacer es usar el buen Vim con un plugin para programadores Perl :D

El plugin es muy bueno y si saben o no saben se pueden instalar añadir plugins en Vim para programar en distintos lenguajes y facilitarnos el trabajo,añadiendo una serie de buenas herramientas,en este caso lo que hace el plugin es facilitarnos muchas cosas

1.Primero que nada,resalta la sintaxis de nuestro script

2.Añade un header para .pl

3.Lo interesante!!!

Puedes crear una rutina solo con teclear


\isu

Con esto nos dará la indicación de ponerle nombre a la rutina y nos creara todo el esqueleto de la rutina :D

4.Añade un comentario,listo para indicar algo fácil y rápido solo tecleando

\crf
5.Salva y ejecuta rápidamente con solo una orden

\rr
6.Y mucho mas

Tutorial

0.Necesitamos vim

Asi que lo instalamos

Ubuntu

sudo apt-get install vim

Archlinux

sudo pacman -S vim

FreeBSD

sudo pkg_add -rv vim

Gentoo(como root)

emerge --ask app-editors/vim

openSUSE

sudo zypper in vim

Son los sistemas que uso,googlen para su OS como instalar si no lo mencione

1.Descargar la extensión(descarguen la 5.1)

Enlace

2.Crear las carpetas y archivos necesarios

Cheken si tienen la carpeta .vim en su HOME

cat ~/.vim 


Si no la tienen creen una

mkdir ~/.vim 
Ahora cheken si tienen .vimrc en su HOME

cat ~/.vimrc
Si no la tienen copien el rc de ejemplo de la carpeta de vim

 cp /usr/share/vim/vim73/vimrc_example.vim ~/.vimrc
3.Mover el plugin a donde debe estar

Desde terminal date locacion en donde se descargo el plugin,lo mas seguro es que sea en la carpeta Desacargas

Así que

cd ~/Descargas 

Ahora movemos el plugin a la carpeta ~/.vim(pueden buscarlo con ls *zip)

ls *zip 

Y para mover

mv ./perl-support.zip ~/.vim

4.Activar el plugin

Cámbiate de locación a la carpeta .vim del HOME

cd ~/.vim 

Y descomprime

unzip ./perl-support.zip

Ahora abrimos la configuración de vim(.vimrc) y añadimos lo siguiente

filetype plugin on

Con mismo vim si desean


vim ~/.vimrc
Guardan y listo ya tienen Vim listo para programar en Perl :D

Por ejemplo ahora aparecerá el header a la hora de crear un nuevo script en Perl con vim:


Pueden ver las demás funciones en thegeekstuff

Mas info:







Leer más...

lunes, 8 de octubre de 2012

Como encriptar texto con vim Linux

Vim es una utilidad que me ha servido bastante  en cualquier distribución de LInux y que a muchos de ustedes seguramente también les ha servido,no solo en llinux sino que también en BSD/WIndows/Amiga OS/etc ,vim nos ayuda mucho para programar con el uso de sintaxis números y demás cosas



pero esto va hasta ahí,ya que también sirve para encriptar nuestros archivos de texto con un algoritmo de cifrado simétrico por bloque Blowfish, que fue diseñado por Bruce Schneier.

Acerca de Bruce Schneier

http://es.wikipedia.org/wiki/Bruce_Schneier

Bueno para encriptar un archivo de texto basta con usar esta sintaxis

vim -x archivo.sh

Y nos pedirá una contraseña,la colocamos y salvamos con :wq

Y si lo queremos editar con otro programa o sin contraseña no lo podremos hacer

Vídeo de ejemplo



Si lo compilaste ,debes haber usado "crypt" para que funcione

Referencia : rinconinformatico.net/cifrado-de-archivos-con-vim/

Leer más...

domingo, 30 de septiembre de 2012

Como instalar vim cambiar el tema y habilitar los numeros en Archlinux

Bueno en esta ocasion vamos a instalar cambiar el tema y habilitar los numeros en vim usando archlinux :D,el procedimiento es parecido al de FreeBSD y Gentoo,no igual a Ubuntu o derivados,ya que en Ubuntu o deribados o creo que tambien en fedora y openSUSE,la configuracion de vim se guarda en /etc/vim/vimrc y en estos sistemas que mencione se guardan en nuestro home (~)

Tutorial

1.Instalamos vim

yaourt -S vim

2.Copiamos el archivo de configuracion de ejemplo

cp /usr/share/vim/vim73/vimrc_example.vim ~/.vimrc

Ahora cambiamos el tema

mkdir ~/.vim


mkdir ~/.vim/colors

Descargamos un tema

http://bytefluent.com/vivify/

Y lo movemos a la carperta

~/.vim/colors

Lo pueden hacer desde terminal o desde nautilus

Editamos el rc de vim

sudo nano ~/.vimrc

buscamos "syntax on" y lo sustituimos por

syntax enable
colorscheme nombre_del_tema(sin .vim)

Lo guardamos y listo

3.Habilitamos los numeros

De nuevo

sudo nano ~/.vimrc

Colocamos

set number

Abajo de

set incsearch

Lo guardamos y listo

Leer más...

viernes, 7 de septiembre de 2012

Como cambiar el tema de vim Linux


Vim es un editor de texto para programadores muy bueno y lo podemos personalizar muy bien cambiano el tema de la sintaxis,la sintaxis de colores de vim nos indica muy bien donde hay fallos y donde tenemos que depurar,pero si no nos gusta el color podemos cambiarlo,ademas tiene soporte para muchos lenguajes de programación como mis favoritos que son python,lua,bash,perl ademas de muchos otros.

Tutorial

1.Este tutorial esta basado en que ya tienes vim instalado asi que lo primero que tenemos que hacer es ver si tenemos la carpeta donde se guardan los temas de vim

Asi que verificamos con un cd

cd ~/.vim/colors

Si cambiamos de directorio si lo tenemos, pero si da un error los creamos con:

mkdir ~/.vim


mkdir ~/.vim/colors

2.Vamos a este enlace,que es donde descargaremos el tema que mas nos guste,o creamos uno con los colores que nos gusten

http://bytefluent.com/vivify/

3.Lo descargamos y lo movemos o copiamos a la carpeta de colors,con nautilus,dolphin,etc o con terminal:

mv ./nombre_del_tema ~/.vim/colors

4.Abrimos vimrc

sudo nano /etc/vim/vimrc

buscamos "syntax on" y lo sustituimos por

syntax enable
colorscheme nombre_del_tema(sin .vim)

Lo guardamos y listo


Eso es todo

Leer más...

sábado, 1 de septiembre de 2012

Instalar vim en FreeBSD 9.0 y habilitar sintaxis y numeros



Si acaban de instalar FreeBSD tienen que cargar primero Linux y hacer un dhclient a su conexion

Usando la cuenta de root

dhclient em0
kldload linux 

y no vendria mal un actulizacion de ports

portsnap fetch update

Bueno descargamos vim con

pkg_add -rv vim
Y también nano para editar mas fácil :D

pkg_add -rv nano 

Cuando acabe de descargar hacemos un logeo de nuevo

logout

y entramos como nuestro usuario comun

hacemos una copia de la configuracion de ejemplo de vim en nuestro /home

cd /usr/share/vim/vim73

cp ./vimrc_example.vim ~/

Y lo editamos con nano

nano ~/vimrc_example.vim

Y colocamos

set number

Abajo de

set incsearch

Le damos ctrl+o

Y lo guardamos como

.vimrc 
Y probamos

vim hola.sh 




Eso es todo la sintaxis ya la trae activada


Leer más...