Mostrar y ocultar archivos ocultos en Mac OS X

Si se necesita mostrar u ocultar los archivos ocultos los cuales comienzan con un “.” al principio de estos, lo pueden realizar de la siguiente manera.

Abriremos una terminal, la cual se encuentra en:

/Applications/Utilities/Terminal

Si se tiene en español la ruta es:

/Aplicaciones/Utilidades/Terminal

Ahora en la terminal ingresamos el siguiente comando para indicarle al Finder que muestre los archivos ocultos:
macosx-jx-mini:~ javoaxian$ defaults write com.apple.finder AppleShowAllFiles YES

Hecho lo anterior, ejecutaremos el siguiente comando para reiniciar el Finder:
macosx-jx-mini:~ javoaxian$ killall Finder

Listo, con esto ya podremos ver los archivos ocultos.

jx_post_898_01

Si quisiéramos regresar a ocultarlos, basta con ejecutar lo siguiente:
macosx-jx-mini:~ javoaxian$ defaults write com.apple.finder AppleShowAllFiles NO

Y con esto quedará como lo tenemos habitualmente.

 

Duet Display: usar un iPad o iPhone como segundo monitor de una computadora

No hace mucho me encontré con esta app, la cual me resultó interesante sobre todo para aquellos que como yo, les gusta usar más de un monitor conectado a la computadora.

Justo Duet Display nos permite realizar esta acción. Cabe mencionar que la app que se utiliza en el iPad o iPhone es de paga pero la verdad en este caso ha valido la pena la compra, tiene sus detalles pero en general me ha estado funcionando bastante bien.

Para que se pueda utilizar se tiene que bajar Duet Display de App Store. Posteriormente hay que descargar la aplicación para nuestra computadora de escritorio o laptop con Mac OS X o Windows.

Una vez instaladas las aplicaciones en los equipos correspondientes, bastará con conectar el iPad o iPhone a la computadora por medio de su cable y abrir la app en nuestro dispositivo móvil. Y listo, con esto podremos disfrutar de un mini segundo monitor.

Sitio: http://www.duetdisplay.com/

Descarga para móvil: https://itunes.apple.com/mx/app/duet-display/id935754064?mt=8

Descarga para computadora: http://www.duetdisplay.com/

Aquí dejo un video: https://www.youtube.com/watch?v=CCcCOnw2-zk


PhpStorm: IDE de desarrollo para programar en PHP

PhpStorm es un interesante IDE de desarrollo para PHP el cual he empezado a utilizar. Desde hace mucho utilizo a Eclipse como IDE, pero decidí probar esta alternativa debido a que desarrollando en Android y hacer el paso de Eclipse a Android Studio noté varias cosas que me agradaron.

Encontré que debido a que estaba basado en IntelliJ la misma empresa tiene varios IDE’s para desarrollar, entre ellos PhpStorm. Estoy trabajando un proyecto junto con Yii2 y va bastante bien. Seguramente estaré publicando algunas cosas más de este IDE.

Sitio: https://www.jetbrains.com/phpstorm/

Descarga: https://www.jetbrains.com/phpstorm/download/

Gratuito: No.

Captura de pantalla:


jx_post_871_02

Folx: Gestor de descargas para Mac OS X

Folx es una herramienta para el sistema operativo Mac OS X que nos ayuda con los archivos que deseamos descargar desde internet.

Apenas lo empecé a usar como alternativa a uGet de GNU/Linux y hasta este momento me ha funcionado bastante bien, espero que siga de esa manera.

Sitio: http://mac.eltima.com/es/download-manager.html

Descarga: http://mac.eltima.com/es/download-manager.html

Gratuito: Si.

Aquí dejo una captura de pantalla.

jx_post_866_02

GitKraken: cliente para Git

GitKraken es un cliente para administrar nuestros cambios de nuestros proyectos con Git. Últimamente lo he empezado a usar bastante con GNU/Linux y me ha dejado muy buen sabor de boca, aún no se le compara al 100% a SourceTree que lo he usado ya bastante tiempo en Mac OS X.

Esta en constante actualización debido a que todavía está en versión Beta.

Esta disponible para su descarga en GNU/Linux, Mac OS X y Windows.

 

La liga para su descarga es:

Sitio: http://www.gitkraken.com

Descarga: http://www.gitkraken.com/download

Gratuito: Si.

Aquí dejo una captura de pantalla de este cliente.


jx_post_857_02

mount: wrong fs type, bad option, bad superblock on /dev/sda hfsplus

Intentando montar mi disco duro de Mac OS X me encuentro con la siguiente pantalla:

jx_post_827_01

Intenté montarlo desde línea de comandos y me salió el siguiente mensaje:
mount: wrong fs type, bad option, bad superblock on /dev/sda2,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

 

por lo que tuve que hacer lo siguiente para poder montar la partición.

Instalé el siguiente paquete:

hfsplus

de la siguiente manera:
root@macbookairubuntu:~# apt-get install hfsplus

con esto me permite montar la partición.

 

 

Cambiar el tipo de letra por defecto de FreeMind en Mac OS X

Para cambiar la tipografía con que cuenta por defecto FreeMind, lo que podemos realizar es lo siguiente en Mac OS X:

Ir a:

FreeMind -> Preferences…

 

jx_post_658_01

 

Una vez dentro de la opción, iremos a:

Defaults -> Default Fonts -> Default Font

Ahí cambiaremos el nombre por defecto, el cual es:

SansSerif

por el nombre de la tipografía que deseamos usar y que tenemos instalada en nuestro equipo.

 

jx_post_658_02

 

Y presionamos sobre Save para guardar los cambios, se nos notificará que se posiblemente debemos reiniciar FreeMind para que surtan efecto los cambios.

 

jx_post_658_03

 

jx_post_658_04

 

 

Declaración de variables en Swift

Así como mostré la forma de declarar una constante en Swift, ahora le toca a las variables, para ello es muy similar a como se hizo en las constante, la única diferencia es que en lugar de poner la palabra:

let

Se deberá usar la palabra reservada:

var

Se indica la palabra reservada var, posteriormente se especifica el nombre de la variable y se asigna el valor que se le quiere poner, como a continuación se presenta:
var miVariable = "Esta es una variable"
De esta forma queda declarada una constante en Swift.

Declaración de constantes en Swift

Para declarar constantes en Swift se realizan de la siguiente manera.

Se indica la palabra reservada:

let

Posteriormente se especifica el nombre de la constante y se asigna el valor que se le quiere poner, como a continuación se presenta:
let miConstante = "Esta es una constante"
De esta forma queda declarada una constante en Swift.

Mostrar la carpeta Librería (Library) en el Finder de Mac OS X

Aunque suelo trabajar en consola y puedo acceder a la carpeta ~/Library de mi Home, quise explorar la opción de poder ver su contenido de dicha carpeta pero desde el Finder ya que por defecto no puede verse su contenido.

La forma para resolver esto es muy sencilla.

Nos vamos a la siguiente opción del Finder:

Finder -> Ir

Se mostrará una pantalla similar a la siguiente:

jx_post_597_01

Ahora bastará con presionar la tecla:

Alt

y se mostrará la carpeta Libraría (Library).

jx_post_597_02

Presionamos sobre la opción:

Librería

y se mostrará el contenido de ésta:

jx_post_597_03

 

Cómo obtener el ancho y alto (width y height) de una pantalla en iOS con Objective-C

Para obtener el ancho y el alto de una pantalla en iOS con Objective-C es muy sencillo, bastará con ejecutar las siguientes línea según sea el caso:

Ancho (width):

[[UIScreen mainScreen] bounds].size.width;

Alto (height):

[[UIScreen mainScreen] bounds].size.height;

 

Unir varias imágenes en un archivo PDF en Mac OS X

Para aquellos que como yo, les surge la necesidad de unir varios archivos con imágenes jpg, jpeg, png, etc., en un documento pdf en Mac OS X, aquí pongo una solución.

Lo primero es ir a la carpeta donde tenemos la imágenes en el finder.

 

jx_post_553_01

 

 

Seleccionamos todas las imágenes que vamos a agregar al PDF, esto puede ser seleccionar en el menú:

Edit -> Select All

o presionando la combinación de teclas:

Cmd + A

 

jx_post_553_02

 

Esto marcará todas las imágenes.

 

jx_post_553_03

 

 

Ahora con los archivo seleccionados, presionamos en el menú:

File -> Open With -> Preview (default)

 

jx_post_553_04

 

y nos abrirá la aplicación de Preview para visualizar imágenes o PDF’s.

jx_post_553_05

 

Ahora nos vamos al menú y presionamos en:

File -> Print…

 

jx_post_553_06

 

Se abrirá la pantalla para imprimir.

 

jx_post_553_07

 

 

 

Presionamos en la lista donde aparece PDF como opción seleccionada.

 

jx_post_553_08

 

Y se mostrará la siguiente lista en la cual seleccionaremos la opción Save as PDF…:

 

jx_post_553_09

 

Aparecerá otra pantalla para guardar el archivo PDF. En esta pantalla colocamos el nombre del archivo como deseamos que se llame, además de la ubicación del archivo donde lo queremos guardar y será creado el archivo con todas las imágenes agregadas.

 

jx_post_553_10

 

 

 

 

 

 

 

Tomar capturas de pantalla (screenshots) en iOS Simulator

Cuando queremos publicar una app para iOS, el iTunes Connect nos solicita una serie de screenshots para poder publicarla. Yo regularmente tomaba las capturas de pantalla desde los dispositivos, pero conforme fueron apareciendo más de éstos, me fue imposible contar con ellos, por lo que me vi con la necesidad de saber cómo tomar los screenshots de otra forma, a lo cual me llevo a tomarlos desde el iOS Simulator.

Tomar una captura de pantalla desde el simulador es muy sencilla, sólo bastará correr nuestra app en el iOS Simulator, y con éste corriendo bastará con presionar:

Cmd + S

o ir a:

File -> Save Screen Shot

jx_post_509_01

cualquiera de las 2 opciones creará una imagen en el Escritorio (Desktop).

Borrar los proyectos recientemente abiertos en Xcode

Realizando un post que próximamente publicaré, me ví con la necesidad de limpiar la lista de proyectos recientes en Xcode. Por tal motivo, para llevar esto a cabo, realizaremos lo siguiente:

Abriremos Xcode.

jx_post_426_01

Ahora iremos a:

File -> Open Recent -> Clear Menu

Cerramos Xcode y una vez que lo volvamos a abrir, veremos que se ha limpiado la lista de proyectos recientes.

jx_post_426_02

Crear un UIScrollView con contenido en un UIView usando XIB y Objective-C en iOS

Existen muchas formas de crear un Scroll en iOS, esta es una forma sencilla de hacerlo, sobre todo cuando tenemos un contenido fijo y requerimos que se contenido tenga scroll.

Pre requisitos:

En este ejemplo la pantalla está configurada para un iPhone de 3.5 pulgadas.

jx_post_529_01

Lo que haremos será agregar un UIScrollView dentro del UIView que tenemos.

jx_post_529_02

jx_post_529_03

Ahora se creará un nuevo UIView el cual tendrá el contenido.

jx_post_529_04

Este UIView será de Size Freedom:

jx_post_529_05

y tendrá las medidas de 320 de width y 568 de height.

jx_post_529_06

En el UIView que acabamos de crear, agregaremos algún elemento visual en él en la parte de abajo, en este caso será un UILabel.


jx_post_529_07

jx_post_529_08

Ahora se deberá crear un property del UIScrollView como del UIView y conectarlos para incrustar el UIView dentro del UIScrollView.

Para hacer la conexión puede ser como se mencionó en cualquiera de estos dos post:

Aquí use el del segundo post.

jx_post_529_09

jx_post_529_10

En este ejemplo el UIScrollView se llama scrollViewContenido y el UIView se llama viewContenido.

Abriremos el archivo ViewController.h y en su método:

– (void)viewDidLoad

vamos a agregar el siguiente código para asignar el contenido del UIView dentro del UIScrollView.

[self.scrollViewContenido setContentSize:CGSizeMake(self.viewContenido.frame.size.width, self.viewContenido.frame.size.height)];

[self.scrollViewContenido addSubview:self.viewContenido];

El método quedará de la siguiente manera:

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    
    [self.scrollViewContenido setContentSize:CGSizeMake(self.viewContenido.frame.size.width, self.viewContenido.frame.size.height)];
    [self.scrollViewContenido addSubview:self.viewContenido];
}

Si ejecutamos el ejemplo, podemos mover el scroll hacía abajo y veremos el UILabel que habíamos agregado.

jx_post_529_11

Cómo conectar automáticamente una property IBOutlet de un ViewController a un XIB o Storyboard en Objective-C

Un IBOutlet sirve para conectar un elemento visual a un elemento del controlador, en este caso, conectar un elemento de nuestro XIB o Storyboard a nuestro ViewController.

En esta ocasión, se describirá como hacerlo de forma más sencilla y casi automática, en: Cómo conectar manualmente una property IBOutlet de un ViewController a un XIB o Storyboard en Objective-C se indica cómo hacerlo de forma manual.

Pre requisitos:

  • Tener creado un proyecto.
  • Contar con un Storyboard o un archivo XIB con su respectivo ViewController.

Este ejemplo cuenta con un archivo Storyboard llamado Main.storyboard y un controlador llamado ViewController.

Lo primero que haremos es abrir el archivo de la interfaz gráfica Main.storyboard y crear un UILabel.

jx_post_516_01

jx_post_516_02

Lo siguiente será crear una conexión entre el UILabel que creamos y asignarlo a un property dentro del controlador, para esto, separaremos nuestra pantalla en dos. Aseguremonos que el archivo Main.storyboard esté seleccionado.
jx_post_516_03
y ahora selecionaremos la opción:
Show the Assistant editor
jx_post_516_04
la cuál son 2 círculos enlazados de Xcode para separar en dos la pantalla y así nos mostrará de un lado la interfaz gráfica y del otro el código fuente del controller asociado.
jx_post_516_05
Hay que asegurarse que esté seleccionado nuestro archivo .h para generar la conexión, en este caso el archivo es ViewController.h.
jx_post_516_10
Ahora crearemos la conexión y la property en el ViewController asociado, para ello, presionamos sobre el UILabel que creamos junto con la tecla Ctrl, lo cual hará que se muestre una línea azul y la dirigiremos hacia la sección con el código.
jx_post_516_06
soltaremos y nos mostrará una pantalla similar a esta:
jx_post_516_07
Ahora lo que haremos será introducir el nombre de nuestra property en en campo Name y presionaremos en Connect. En este caso se llamará labelNombre.
jx_post_516_08
Se creará una property en el controller y se generará la conexión a este con el elemento de la interfaz gráfica.
jx_post_516_09

MySQL de XAMPP no arranca en Mac OS X Yosemite 10.10

jx_post_388_01

Hace uno días intenté retomar un proyecto que estaba haciendo en PHP, por lo que comencé iniciando XAMPP para arrancar MySQL y Apache. Cuál fue mi sorpresa, que al intentar levantar MySQL, no arrancó.

Yo no le había movido nada al XAMPP 10.8.3-4, con excepción, que había actualizado mi equipo de sistema operativo de Mac OS X Mountain Lion 10.8 a Yosemite 10.10. Me puse a investigar, y resultó que el cambio de versión del sistema operativo si había afectado.

Para solucionar este problema lo que hice fue lo siguiente.

Edité el archivo xampp que se encuentra en la ruta:

/Applications/XAMPP/xamppfiles/xampp

Yo uso el editor Vi, pero puede ser editado con cualquier editor de texto. Hay que recordar que en ocasiones hay que tener permisos de administrador para poder editar este archivo.

Una vez abierto el archivo, deberemos buscar la siguiente línea:

$XAMPP_ROOT/bin/mysql.server start > /dev/null &

Encontrada la línea, deberemos agregar el siguiente código arriba de la línea anterior:

unset DYLD_LIBRARY_PATH

Para que quede de la siguiente manera:

unset DYLD_LIBRARY_PATH
$XAMPP_ROOT/bin/mysql.server start > /dev/null &

Hecho lo anterior, podemos guardar los cambios del archivo e intentar nuevamente arrancar MySQL, y deberá de iniciar.

Si se tenía abierto XAMPP cuando se modificó el archivo, es posible que sea necesario cerrar y volver abrir XAMPP.

jx_post_388_02