Re: [code] Opening remote files in textadept`

From: Milind Gupta <milind.gupta.att.gmail.com>
Date: Thu, 4 Feb 2016 13:35:39 -0800

Thank you for the replies. Thank you for letting me know about lsyncd I
looks very interesting.

Thanks,
Milind

On Thu, Feb 4, 2016 at 1:31 AM, Martin "eto" Misuth <et.code.att.ethome.sk>
wrote:

> Hello,
>
> if you are on Linux sftp FUSE module is one solution, and pretty sufficient
> when doing quick edits, but it might get bit flaky sometimes.
>
> If, during your workflow, you tend to replicate parts of project tree from
> server on your local host, or your work is "project" based, you might
> want to
> look into lsuncd [1].
>
> lsyncd is linux only, but it is lua based, so you can use your lua
> familiarity
> to your advantage. You spawn lsyncd instance, that is monitoring your
> local tree
> with epoll.
>
> It monitors file changes and collects them into batches, and after some
> configurable interval, it pushes them together upstream (usually 1 second).
>
> Default lsyncd module uses rsync to do synchronization task, but there are
> lua scripts to use lftp instead (that one supports ssh-agent should you be
> so
> inclined and supports parallel uploads).
>
> With this setup, you can for example achieve "instant sync" workflow, like
> when
> doing website development. As soon as you press save bind in textadept,
> changes
> are usually almost immediately sent upstream and you can do relaod (F5) in
> browser to see the effects immediately.
>
> Advantages:
> - you can track your project locally with dcvs/cvs system, while on server
> only "runtime" files are stored (by making lsyncd ignore .svn,.hg,.git
> directory)
> - you do your edits locally, so it's pretty quick, and you local tree
> always
> has proper version of files
> - you can use local tools to inspect tree you work on (grep, ag, various
> lints, application package managers)
> - you can set lsyncd to ignore uploading of certain local directories and
> files (build recipes, "makefiles" and other artifacts)
> - you can "shellout" from TA into helper scripts and operate directly on
> files in ways not otherwise possible
> - as lsyncd tool is standalone and pretty scriptable, you have infinite
> posibilites:
> eg. trigger "rebuild" script on tree change and upload even it's results
> - if you store per project lsyncd setup in project tree and git for
> example,
> you can share all this with colleagues (given they have linux textadept
> and
> other dependencies) easily so you all have same "environment"
> - once you get your setup working (like for longterm project) you can be
> very
> productive
>
> Disadvantages:
> - it only works on linux
> - some ditributions have old lsyncd version or are missing it rntirely
> (but
> it's pretty straightforward to compile yourself)
> - you need to learn lsyncd, lua, rsync, maybe lftp, and use terminal a bit
> - you need to keep local tree (might be actually good thing)
> - you will burn some time finding setup that works for you
> - it will take some time to get up to full speed, you might not want to
> invest
> time into that
>
> For me it was well worth it though. lsynd is nice companion to TA.
>
> [1] https://github.com/axkibe/lsyncd
> --
> You are subscribed to code.att.foicica.com.
> To change subscription settings, send an e-mail to code+help.att.foicica.com.
> To unsubscribe, send an e-mail to code+unsubscribe.att.foicica.com.
>
>

-- 
You are subscribed to code.att.foicica.com.
To change subscription settings, send an e-mail to code+help.att.foicica.com.
To unsubscribe, send an e-mail to code+unsubscribe.att.foicica.com.
Received on Thu 04 Feb 2016 - 16:35:39 EST

This archive was generated by hypermail 2.2.0 : Fri 05 Feb 2016 - 06:33:19 EST