Un editor que se pasa por alto mucho es MacVim . Se basa en el venerable editor vim , de * nix, y puede hacer todo lo que solicitó a través de complementos.
Le muestro que admite 176 idiomas diferentes, incluidos todos los que mencionó.
Regularmente busco métodos existentes, variables, frases de texto al azar a través de un mapeo CNTRL_N o CNTRL_P que busca en todos los archivos abiertos y muestra una lista de los resultados.
Vim llama a sus proyectos "sesiones", que almacenan todos los archivos, configuraciones de ventanas, macros, etc., para su posterior recarga. Desde el modo "directo" de vim, :mksession path/to/sessionfile
lo creará. Abastecimiento más tarde desde la línea de comandos es simple: vim -S path/to/sessionfile
.
Hay un gran complemento llamado VCS , que maneja mis cosas SVN:
... CVS, SVN, SVK, git, bzr y hg dentro de VIM, incluida la confirmación de cambios y la realización de diferencias ...
La funcionalidad de carga al servidor es manejada por el complemento netrw .
vim tiene una curva de aprendizaje empinada vimtutor
, que viene con la aplicación y puede ayudarlo a comenzar. Además, hay usuarios activos aquí y en los sitios hermanos de SO, además del nodo vim IRC en freenode.net.
Probablemente lo más sorprendente de vim es que está disponible en una versión con interfaz en Mac OS como MacVim, en Linux usando gvim, en Windows y desde la línea de comandos de cualquiera de esos sistemas operativos. vim en cualquiera de ellos usará los mismos comandos, los mismos complementos, los mismos temas, etc., dentro de las limitaciones de esos entornos. Salto de Mac a Linux todo el día y tengo al menos una ventana vim abierta en alguna parte.
Y, para que nadie piense que no estoy familiarizado con las alternativas solo para Mac, poseo todas mis copias de Coda, BBEdit y TextMate, y las uso. Regreso con BBEdit, y en realidad solía hacer demostraciones ocasionales en MacWorld. Es genial, pero uso vim con la misma configuración en todas partes, y ninguno de los otros editores puede hacerlo. Entonces, si necesita esa compatibilidad multiplataforma, investigue.