wbond sublime plugin instalar ssh sublimetext2

ssh - plugin - sublime text sftp config



Cómo usar Sublime sobre SSH (14)

Estoy tratando de usar Sublime Text 2 como editor cuando entro al SSH en mi servidor de trabajo y estoy perplejo. Encontré este http://urbangiraffe.com/2011/08/13/remote-editing-with-sublime-text-2/ (entre muchas otras publicaciones) que parece que podría ayudar, pero no lo sigo exactamente , particularmente con los valores que debo poner para la variable remota en la línea 5. Configuré "/ Users / path / to / local / copy" en mi directorio raíz local, pero no sé si eso es correcto o si hay más que hacer. ¿Alguna idea? Estoy en OSX10.8


Como seguimiento a la respuesta de @ ubik, aquí están los tres pasos simples (de una sola vez) para que el comando ''subl'' funcione en su servidor remoto:

  1. [ Local ] Instale el paquete rsub en Sublime Text usando el Sublime Package Manager
  2. [ Local ] Ejecute el siguiente comando Bash (esto configurará un túnel SSH , que es la salsa secreta de rsub):

    printf "Host */n RemoteForward 52698 127.0.0.1:52698" >> ~/.ssh/config

  3. [ Servidor ] Ejecute el siguiente comando Bash en su servidor remoto (esto instalará el comando de shell ''subl''):

    sudo wget -O /usr/local/bin/subl https://raw.github.com/aurora/rmate/master/rmate; sudo chmod +x /usr/local/bin/subl

¡Y voilá! Ahora estás usando Sublime Text sobre SSH.

Puede abrir un archivo de ejemplo en Sublime Text desde el servidor con algo como subl ~/test.txt


Dependiendo de sus necesidades exactas, puede considerar usar BitTorrent Sync. Cree una carpeta compartida en su PC de casa y su PC de trabajo. Edite los archivos en la PC de su casa (utilizando Sublime o lo que quiera), y se sincronizarán automáticamente cuando guarde. BitTorrent Sync no se basa en un servidor central que almacene los archivos (como Dropbox y similares), por lo que en teoría no debería haber problemas debido a que un tercero almacena información confidencial.


Esta es la forma más fácil de editar localmente los archivos que se encuentran en el host remoto, donde previamente ha configurado ssh para IP remota

# issue on local box sudo apt-get install sshfs # on local host install sshfs ( linux ) # on local box create secure mount of remote directory export REMOTE_IP=107.170.58.249 # remote host IP sshfs myremoteuserid@${REMOTE_IP}:/your/remote/dir /your/local/dir # for example

Hecho !!!

Ahora, en el host local, comience a editar archivos ... cuando enumere dir localmente, es posible que no enumere nada hasta que cd en subdir o enumere un archivo específico ... carga lenta ... esto no afecta la edición de archivos

subl /your/local/dir/magnum_opus.go # local file edit using sublime text

por lo que arriba es en realidad la edición de archivos remotos en

/your/remote/dir/magnum_opus.go # remote file on box $REMOTE_IP

Para OSX o Windows, vea este artículo de la gente más amable en Digital Ocean


Estoy en MaxOS, y la forma más conveniente para mí es usar CyberDuck , que es gratis (también disponible para Windows). Puede conectarse a su sistema de archivos SSH remoto y editar su archivo con su editor local. Lo que CyberDuck hace es descargar el archivo en un lugar temporal en su sistema operativo local y abrirlo con su editor. Una vez que guarde el archivo, CyberDuck lo cargará automáticamente a su sistema remoto. Parece transparente como si estuviera editando su archivo remoto usando su editor local.


Estoy en Windows y he usado 4 métodos: SFTP , WinSCP , Unison y Sublime Text en Linux con X11 reenvío a través de SSH a Windows (sí, puede hacerlo sin configuraciones desordenadas y utilizando una herramienta gratuita).

La cuarta forma es la mejor si puede instalar software en su máquina Linux.

La cuarta forma:

MobaXterm

  1. Instalar MobaXterm en Windows
  2. SSH a su caja de Linux de MobaXterm
  3. En su caja de Linux, instale Sublime Text 3. He aquí cómo hacerlo en Ubuntu
  4. En el símbolo del sistema, inicie sublime con subl
  5. ¡Eso es! Ahora tiene texto sublime ejecutándose en Linux, pero con su ventana ejecutándose en su escritorio de Windows. Esto es posible porque MobaXterm maneja el reenvío X11 a través de SSH para que usted no tenga que hacer nada extravagante para que funcione. Puede haber una pequeña cantidad de retraso, pero sus archivos nunca estarán desincronizados, porque los está editando directamente en la máquina Linux.

Nota: al invocar subl si se queja de una determinada biblioteca, asegúrese de instalarlos para invocar con éxito sublimetext desde mobaxterm.

Si no puede instalar software en su caja de Linux, lo mejor es Unison. ¿Por qué?

  • Es gratis
  • Es rápido
  • Es confiable y no importa qué editor usas
  • Puede crear listas de ignorar personalizadas

SFTP

Instalación: Instale el paquete de texto sublime http://wbond.net/sublime_packages/sftp . Este paquete requiere una licencia.

  1. Crear una nueva carpeta
  2. Ábrelo como un proyecto de texto sublime.
  3. En la barra lateral, haga clic derecho en la carpeta y seleccione Mapa remoto.
  4. Edita el archivo sftp-config.json
  5. Haga clic derecho en la carpeta en el paso 1 seleccione descargar.
  6. Trabajar localmente.

En la sftp-config, usualmente establezco:

"upload_on_save": true, "sync_down_on_open": true,

Esto, además de un terminal SSH a la máquina, me da una experiencia de edición remota bastante perfecta.

WinSCP

  1. Instalar y ejecutar WinSCP
  2. Vaya a Preferencias (Ctrl + Alt + P) y haga clic en Transferir, luego en Agregar. Nombra el preset.
  3. Establezca el modo de transferencia en binario (no desea conversiones de línea)
  4. Establecer modificación de archivo a "Sin cambios"
  5. Haga clic en el botón Editar junto a Máscara de archivo y configure su inclusión y exclusión de archivos y carpetas (útil cuando tiene una carpeta .git / .svn presente o si desea excluir los productos de compilación que no estén sincronizados).
  6. Haga clic en Aceptar
  7. Conéctese a su servidor remoto y navegue a la carpeta de interés
  8. Elija una carpeta vacía en su máquina local.
  9. Seleccione su preajuste de configuración de transferencia recién creado.
  10. Finalmente, presione Ctrl + U (Comandos> Mantener actualizado el directorio remoto) y asegúrese de que "Sincronizar en el inicio" y "Actualizar subdirectorios" estén marcados.

A partir de entonces, WinSCP mantendrá sus cambios sincronizados.

Trabaja en la carpeta local usando SublimeText. Solo asegúrese de que Sublime Text esté configurado para adivinar los finales de línea del archivo que se está editando.

Unísono

Descubrí que si el árbol de origen es masivo (alrededor de unos pocos cientos de MB con una jerarquía profunda), el método WinSCP descrito anteriormente podría ser un poco lento. Puedes obtener un rendimiento mucho mejor usando Unison . El inconveniente es que Unison no es automático (debe activarlo con una pulsación de tecla) y requiere que se ejecute un componente de servidor en su máquina Linux. El lado positivo es que las transferencias son increíblemente rápidas, es muy confiable e ignorar archivos, carpetas y extensiones son increíblemente fáciles de configurar.


Hay tres maneras:

Además, en teoría, puede instalar X11 en el servidor remoto y ejecutar Sublime a través del reenvío VNC o X11, pero no tendría sentido hacerlo.


He estado trabajando en un proyecto llamado GiySync . Todavía necesita algo de trabajo, pero es de código abierto y lo he estado usando todos los días durante un par de años. También estoy trabajando en una versión nativa de OS X que he llamado GitSyncApp

En este momento solo es OS X, pero debería ser fácil agregar soporte para Linux, y posiblemente también para Windows.

Funciona al ver los eventos del sistema de archivos y se usa para sincronizar una carpeta de proyecto en su máquina local y un servidor.

Probé otras soluciones como osx fuse, Expand Drive, Transmit, varias soluciones que usaban rsync, etc. Todas funcionan ''OK'' para proyectos pequeños, pero si trabajas con mucho código no funcionaron para mí.

Muchas de las opciones del sistema de archivos hacen el almacenamiento en caché para mejorar el rendimiento, lo cual está bien, hasta que no lo sea. Como si trabajas con otras personas y alguien más cambia los archivos en el servidor.

También me encontré con problemas si estaba en una red escamosa o lenta donde terminaría con archivos vacíos. O un archivo que no se sincronizó, entonces el almacenamiento en caché se volvió extraño; Esperemos que haya cometido recientemente. El uso de git resuelve este problema porque verifica la integridad de cada compromiso.

Dos características adicionales:

  1. Usted termina con un compromiso para cada guardado. No es muy útil, pero si alguna vez tienes que retroceder en el tiempo, puedes hacerlo.
  2. Funciona con cualquier editor de texto.

Otra solución mac similar a osxfuse es usar el cliente Transmit FTP de Panic Software, que le permite montar una carpeta remota como un disco local. Es compatible con SFTP, que es muy seguro.


Puede usar sftp para montar el directorio remoto en su máquina de ubicación y luego simplemente abrir los archivos utilizando el texto sublime como lo haría normalmente.

Para montar el directorio remoto usando sftp, ingrese lo siguiente en su administrador de archivos de Linux;

sftp://user@remote_box.com:22/home/user/code_directory

Puede parecer lento dependiendo de sus velocidades de internet. Pero esto funcionó para mí.


Puedes probar algo en lo que he estado trabajando llamado '' xeno ''. Le permitirá abrir archivos / carpetas en Sublime Text (o cualquier editor local) a través de una conexión SSH y sincronizar automáticamente los cambios en la máquina remota. Debería funcionar en casi todos los sistemas POSIX (yo mismo lo uso desde OS X para conectarme a máquinas Linux y editar archivos en texto sublime). Es gratis y de código abierto. Me encantaría algún comentario.

Para obtener más información: es básicamente un mashup Git / SSH escrito en Python que le permite editar archivos y carpetas en una máquina remota en un editor local. No tiene que configurar los módulos del kernel, no necesita tener una conexión persistente, todo es automático y no interferirá con el control de fuente existente porque usa un repositorio Git fuera de trabajo. Además, como se basa en Git, es extremadamente rápido y admite la fusión automática de archivos que podrían estar cambiando en ambos extremos, a diferencia de SSHFS / SFTP, que solo saturará cualquier archivo con marcas de tiempo más antiguas.


Puedes usar rsub , que está inspirado en el rmate de TextMate. De la descripción:

Rsub es una implementación de la función ''rmate'' de TextMate 2 para Sublime Text 2, que permite la edición de archivos en un servidor remoto mediante el reenvío de puertos / túnel SSH.

Aquí hay un buen tutorial sobre cómo configurarlo correctamente.


Sé que esto es muy antiguo, pero tengo una manera realmente genial de hacer que vale la pena compartir.

Lo que se requiere en Conemu y WinSCP . Estas son instrucciones simples

  1. Abra WinSCP.exe e inicie sesión en mi servidor remoto deseado (tengo
    encontró que es importante iniciar sesión antes de adjuntar ...).

  2. En las preferencias para WinSCP - dos configuraciones para cambiar. Elija la interfaz de tipo Explorer y no Commander, para que no vea los archivos locales. A menos que quieras (pero eso parece que apestaría aquí). Configura Sublime como tu editor por defecto.

  3. Con ConEmu abierto, haga clic derecho en la barra de pestañas y seleccione la opción Attach to... Se abrirá un cuadro de diálogo con sus aplicaciones en ejecución. Elija, WinSCP y seleccione Aceptar. ConEmu ahora tendrá una pestaña abierta con WinSCP mostrando sus archivos remotos.

  4. Haga clic derecho en la pestaña WinSCP y elija New console... Cuando se abra el cuadro de diálogo, ingrese la ruta al ejecutable Sublime en su sistema. Antes de presionar Start , en el cuadro que dice New console split seleccione el botón to right opción to right y establezca el porcentaje. Por lo general, elijo el 75%, pero puedes personalizarlo a tu gusto y cambiarlo más tarde.

    1. Ahora verá Sublime en la misma ventana que se ejecuta a la derecha de WinSCP. En Sublime, en el menú Ver, elija Sidebar->Hide Sidebar , y bam, ahora tiene archivos remotos exactamente de la misma manera que lo haría localmente, con algunas advertencias, por supuesto, que vienen con la edición de cualquier cosa de forma remota. Sin embargo, WinSCP se está aligerando rápidamente.

Tengo dos monitores: el navegador Chrome del monitor izquierdo, el monitor derecho muestra el editor de códigos. También en ConEmu , creo otra pestaña y ssh en el sitio en el que estoy trabajando, por lo que puedo hacer cosas como ejecutar gulp o grunt forma remota y también manipular archivos desde la línea de comandos. Desarrollo acelerado en serio.

Aquí hay una captura de pantalla:


Una solución que me funcionó muy bien: edite localmente en Mac y haga que el archivo se sincronice automáticamente con una máquina remota

  1. Asegúrese de tener un inicio de sesión sin contraseña en la máquina remota. Si no es así, siga estos pasos http://osxdaily.com/2012/05/25/how-to-set-up-a-password-less-ssh-login/

  2. cree un archivo en ~ / Library / LaunchAgents / filesynchronizer.plist, con el siguiente contenido:

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>filesynchronizer</string> <key>ProgramArguments</key> <array> <string>/usr/bin/rsync</string> <string>-avz</string> <string>/Users/USERNAME/SyncDirectory</string> <string>USERNAME@REMOTEMACHINE:~</string> </array> <key>WatchPaths</key> <array> <string>/Users/USERNAME/SyncDirectory</string> </array> </dict> </plist>

  3. En una ventana de terminal ejecutar

    launchctl load ~/Library/LaunchAgents/filesynchronizer.plist

  4. Eso es. Cualquier cambio en cualquier archivo en ~ / SyncDirectory se sincronizará con ~ / SyncDirectory en la máquina remota. Los cambios locales anularán cualquier cambio remoto.

Esto crea un trabajo launchd que supervisa SyncDirectory, y cada vez que algo cambia se ejecuta rsync para sincronizar el directorio con la máquina remota.


lsyncd parece ser una buena alternativa al enfoque sshfs. Si usas "-delay 0" funciona en tiempo real.