domingo, 22 de octubre de 2017

Programación en la Mac: editores gráficos de texto.

Como mencionaba en el post pasado (Programación en la Mac: los editores básicos), el ambiente de línea de comandos de la Mac (Terminal), macOS X ya tiene instalado el editor vim en ambiente no gráfico; por eso me sorprendió saber que existe un proyecto open source com MacVIM, una versión gráfica de vim para Mac:

MacVIM - Editor de texto para macOS X.
El primer editor de texto gráfico que se viene a la mente es el que ya está incluido en el sistema, TextEdit:
Código de un shell en TextEdit.
Aunque TextEdit no permite marcar la sintaxis mediante diferentes colores, ni tiene funciones de editores de código (autotabs, comentar/descomentar bloque, identación, etc.), tiene la inteligencia suficiente para saber si estamos editando un programa o script o estamos escribiendo un documento:

Si TextEdit detecta que se está editando un texto humano, automáticamente poner la barra de herramientas de formato de texto (tipo de letra, tamaño, color, etc.).
Y aparte tiene la ventaja de que ya está incluido en el sistema.
Hay muchos editores de texto en el mercado (algunos en el App Store –como los que voy a mostrar– y otros no, como MacVIM), por lo que no puedo mostrarlos todos; solamente voy a mencionar algunas características que tienen los editores de código que los hacen más útiles en estas tareas sobre editores como TextEdit:
  • Necesario: que reconozcan la sintaxis de uno o más lenguajes de programación y la pongan en diferentes colores.
  • Necesario: que el texto escrito se vaya ajustando a la pantalla, pero que el editor reconozca cuando uno escribe una sola línea de código sin meter carateres adicionales.
  • Necesario: tener valores configurables para características de fin de línea (CR –mac pre-OS X–, CR/LF –Windows–, LF –todos los SO derivados de UNIX)
  • Deseble: que tengan controles para cambiar los colores del editor.
  • Deseable: que tengan opciones para identación/desidentación.
  • Deseable: que tengan opciones para comentar/descomentar líneas/bloques de código.
  • Deseable: que cuenten con ayuda y soporte técnico (ya sea local, en un sitio web o por teléfono). Nota. Esto es necesario si el editor tiene más características de lo necesario (por ejemplo, acceso a consola).
  • Bonificación: que tengan características base de un IDE (acceso a la consola, compilación y ejecución de scripts interpretados).
  • Bonificación: acceso a servidores FTP y SFTP.
Ejemplo 1: Albatross TE. Es un buen editor, con muchas herramientas –incluido acceso a la consola y posibilidad de correr scripts shell y Python e incluso reconoce scripts make. Desgraciadamente no es muy personalizable y no le dio tiempo al autor para hacer la ayuda.

Ejemplo 2: TextWrangler. Muy buen editor altamente configurable y personalizable con herramientas muy útiles y avanzadas. Aparte de poder interactuar con AppleScript tiene una ayuda y manual muy completos.
Existen muchos otros editores como Smultron (disponible como app de pago en la Mac App Store), Komodo Edit (muy avanzado y open source, también existe el Komodo IDE), Textmate, Fraise, Sublimetext 2...
Quizá ya hayan salido actualizaciones u otros nuevos, si conocen de algún otro, pasen la información, no sean envidiosos.
Nota: También la app de sistema Notes se puede usar como editor de texto, pero es muy trabajoso y no recomendable.


5619.45

lunes, 9 de octubre de 2017

Programación en la Mac: los editores básicos.

La Macintosh y su sistema operativo macOS X (la X en un número diez romano, no debe pronunciarse "equis" sino "diez": macOS Diez) es un poderoso sistema basado en el sistema operativo Darwin (es un SO tipo UNIX compatible con POSIX que a su vez está basado en NeXTSTEP, Mach,BSD y otros proyectos de software libre. Aunque Darwin fue liberado como un proyecto libre de código abierto, macOS también está formado por componentes y bibliotecas –conocidas como "librerías" en el bajo mundo informático– de código propietario, es decir, bajo licencia de Apple, como Cocoa y Carbon). Como SO tipo Unix, también se puede manejar mediante línea de comandos (la aplicación Terminal sirve para esto, está en Aplicaciones → Utilidades:

Ubicación de la aplicación Terminal para accesar la línea de comando.

Dentro del ambiente de línea de comando ya se tienen instalados y accesibles los editores:

vi:
El editor clásico vi en la terminal.
vim:
El editor vim (vi improved) en la terminal.
emacs:
El editor emacs en la terminal.

Aparte de los filtros y editores clásicos de Unix: ed, cat, ....



5608.22