<HTML><BODY style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space; "><DIV>One question I have is what you mean when you say you "have to work off the server."  If this is a "security" concern, I think you're already compromised... when you edit something in a window on your machine, there is almost certainly a version of that file on your hard drive, regardless of where you opened from (I'm thinking of temp files).  If it's not a security concern, is it a version control concern?  </DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>I also can't get a picture in my head of what's actually happening when you "open all the files via FTP and then drag them to an empty project..."  Have you mounted a remote directory on your desktop to do this?</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Enough questions.  Here's an approach I stuck together a few days ago and it seems to be working.  Maybe it or something similar will work for you.  I was inspired by all the talk of rsync, ssh and bundle creating.  If you need to open arbitrary files from many different remote locations, this probably wouldn't work very well, but for editing a fairly stable collection of files that are in one location -- a web site, for example ;)  -- I will never feel the need for "TextMate over FTP" again!</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>The simple version:  I edit the files locally (on my hard drive) then use rsync to synchronize a remote directory to my local working directory.  Yes, this requires that you have the files on your local hard drive, but they are there anyway (regardless of how briefly) if you "edit by FTP."</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Once you set up ssh keys correctly (discussed elsewhere) you can avoid entering your password at each connection.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>Using rsync frees you of trying to remember which of 30 or 130 files you actually changed and should FTP back to the server.  One usually gives up and just uploads them all, for safety's sake.  This can take a long time.  I find I tend to use my rsync method pretty much like I do for a "save" with a single file... except that it "saves," elsewhere, (the changes to) the entire project directory.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>The fun part is that I also created a HTML bundle with the required rsync command line in it, and now --from within TextMate-- at the touch of a key the server files are updated to match my working files.</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>I have decided to keep the names of any of my TextMate project folders and the remote server folders the same.  If I do this consistently for every project I work on, I can just use the same bundle, if I substitute ${TM_PROJECT_DIRECTORY##*/} in the path where the project folder name would be.  (I don't know anything about regex... I just happened to find this little bit if info in the TextMate documentation!)</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><SPAN class="Apple-style-span">Furthermore, my local working project directory is also a subversion working directory.  As I'm a "team" of one, and I'm using subversion mostly as a "Project-Level Undo" that has a very long history stack.  It happens that my subversion repository is on the same computer as my working copies, but I assume this whole idea would also work fine with a remote repository and a group of authors/developers.  </SPAN></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV><SPAN class="Apple-style-span">rsync has a handy switch (<FONT class="Apple-style-span" face="Courier" size="4"><SPAN class="Apple-style-span" style="font-size: 14px;"><FONT class="Apple-style-span" color="#000000">-C,</FONT></SPAN></FONT><FONT class="Apple-style-span" face="Courier" size="4"><SPAN class="Apple-style-span" style="font-size: 14px;"><FONT class="Apple-style-span" color="#000000"> </FONT></SPAN></FONT><FONT class="Apple-style-span" face="Courier" size="4"><SPAN class="Apple-style-span" style="font-size: 14px;"><FONT class="Apple-style-span" color="#000000">--cvs-exclude</FONT><FONT class="Apple-style-span" face="Verdana" size="3"><SPAN class="Apple-style-span" style="font-size: 12px;"><FONT class="Apple-style-span" color="#000000">) </FONT></SPAN></FONT></SPAN></FONT><FONT class="Apple-style-span" color="#000000">t</FONT>hat skips copying <FONT class="Apple-style-span" color="#000000">of a number of files you probably don't want to be synchronizing.  The list includes the invisible svn "administrative directory" that's in a working copy folder.  Also checked for files to exclude is a</FONT></SPAN><FONT class="Apple-style-span" face="Courier" size="4"><FONT class="Apple-style-span" color="#000000"><FONT class="Apple-style-span" face="Verdana" size="3"><SPAN class="Apple-style-span" style="font-size: 12px;"> file named </SPAN></FONT></FONT><SPAN class="Apple-style-span" style="font-size: 14px;">.cvsignore,<FONT class="Apple-style-span" color="#000000"><FONT class="Apple-style-span" face="Verdana" size="3"><SPAN class="Apple-style-span" style="font-size: 12px;"> in your home directory.  The "ignore" file probably doesn't exist.  You'd need to create it because you'll probably want to add ".DS_Store" to the exclusion list!</SPAN></FONT></FONT></SPAN></FONT></DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>(As I'm not really a command-line jockey, I may have made some technical errors or just plain errors in thinking about this... please clarify or correct, anyone!)</DIV><DIV><BR class="khtml-block-placeholder"></DIV><DIV>eo</DIV><DIV><BR class="khtml-block-placeholder"></DIV><BR><DIV><DIV>On Feb 14, 2006, at 4:10 PM, minimal.design wrote:</DIV><BR class="Apple-interchange-newline"><BLOCKQUOTE type="cite"><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I looked through the mailing list history and I know the whole FTP integrated thing has been talked about a lot already but hear me out;</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I just started working for this company where I HAVE to work off of the server.<SPAN class="Apple-converted-space">  </SPAN>I don't like it, but that's the way it's gonna have to be for now (working on it though ;)</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">So I tried to figure out a way to work with project windows off of the server and discovered it was impossible...<SPAN class="Apple-converted-space">  </SPAN>What I do now, is open all the files via FTP and then drag them to an empty project and hide all the windows.<SPAN class="Apple-converted-space">  </SPAN>It's a major pain but I do it once in the morning and leave it open all day so that's not too bad.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">What I would like to know is if there's a way I could automatize the process, some sort of "add all open windows to empty project" type macro or something along those lines. Not as good as being able to save projects on remote servers, but it would be good enough for now...</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">I also read that someone had some kind of Perl/rsynch combo that sort of mimicked the project on server idea, but I couldn't find enough info to get anything working.</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Any help in optimizing a remote type workflow would be greatly appreciated.<SPAN class="Apple-converted-space">  </SPAN>Thanks!</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">(As a side note, I almost got my boss to switch from BBEdit, but the whole remote project issue blew it.)</DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; min-height: 14px; "><BR></DIV><DIV style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Yann</DIV></BLOCKQUOTE></DIV><BR class="khtml-block-placeholder"></BODY></HTML>