Remote Drive Tree

Posted by toddw on 2007-11-16 15:27 |
1.4.3
Todd Whiteman
Mon, 2013-03-11 14:42
  • : 4.4.0 - 8.*
  • : 4.4.0 - 8.*

Here is an extension that provides a servers tab inside of Komodo (installed after the Code Browser tab).

This extension provides a server tree row, one for each of your server accounts set in server preferences.

The server tree rows are expandable and upon selection of a server tree row, the file contents will be displayed in a file tree (located just below the server tree).

The file tree rows can be selected and the correstponding files can be opened by double-clicking a row or by pressing the enter key.

Updates

1.4.3

1.4.2

  • Komodo 7 support.

1.4.1

  • Refresh the server list when moved by TweakUI.
  • Put the refresh server list icon back in the toolbar.

1.4.0

  • Automatically refresh the server list when server preferences change (this feature applies to Komodo 6 only).

1.3.1

  • Made compatible with Komodo 6.

1.3.0

  • Added native file images for the file listings
  • Hopefully fix a bug of Komodo hanging when toggling open/closed a directory (bug 81497)

Screenshot


RemoteDriveTree extension screenshot

stellaris | Wed, 2008-09-24 10:38

Hi Todd,

first of all, thanks a lot for the extension, it's so practical, awesome.

I've got a suggestion to make: clicking on a folder could display contained sub-folders instead of only displaying files in the clicked folder. I don't really need to have the tree expanded a lot of times, so clicking on a displayed sub-folder in the clicked one would suffice. The current behaviour is a little deviant from what I've come to expect from a FTP software. Hope I am making any sense here.

Keep up the good work!

cosmicbdog | Mon, 2009-04-13 02:05

It seems fairly normal to me that the files would be displayed with the subfolders of the folder being clicked.

confiq | Fri, 2008-09-26 12:17

Hi Todd
Great addon, awesome!
It would be nice to see chmod option or by clicking right mouse button to see some option as "remove,rename"...

kulvik | Wed, 2008-11-05 04:53

Great addon, but.. I think what people really want in such an addon is actually a light ftp client. A way to add/delete/edit files on an FTP server directly on a remote server as you would do with dreamweaver, coda and so on.

Any plans/rumors of a "complete" ftp addon to Komodo?

Best regards,
Thomas

toddw
ActiveState Staff
Wed, 2008-11-05 09:53

Hi Thomas,

The Komodo team do not have any plans to create/modify the ftp functionality or modify the existing ftp add-ons in the near future.

Note that Komodo's remote file dialog ("File->Open->Remote File" menu) does provide the ability to "delete" and "rename" (through the right-click context menu) as well as the ability to create new directories.

Komodo (since it is built on top of Mozilla) can also re-use a lot of existing Firefox extensions, so perhaps one of the existing FTP extensions like FireFTP could be ported to Komodo. I'm sure it would not be too difficult to do (at least for someone who has knowledge of XUL and/or Mozilla extensions).

Cheers,
Todd

loubabe | Wed, 2008-11-05 16:56

Based on what I've seen in these forums, and in my own experience, I am very surprised by the lack of plans for FTP improvements. The primary use case for web developers is to work on files locally and then deploy to an FTP server once complete. This basic functionality is prevalant in every IDE I've worked in, even free ones like Aptana. Why not in Komodo? I don't think it's reasonable to just assume someone will write an extension ... if it's so simple, why can't the Komodo team create one?

Kippy | Wed, 2008-11-26 03:56

I have defined remote servers (SCP and FTP) in Komodo's Preferences section, including usernames and passwords. When I browse the remote server using Remote Drive Tree, the folders are displayed (so the login must have been successful). However when I double click on a file to edit it, I am prompted for my username and password, which shouldn't be necessary.

I have only seen this happen with Komodo Edit 5.0.1 and 5.0.2. If I use the "Open Remote File" menu option within Komodo, I am not prompted for credentials. The same version of Remote Drive Tree (1.2.0) works fine with Komodo Edit 4.4.1 (no additional login prompt), so I wonder if there is a subtle change come in with Komodo 5.x that affects Remote Drive Tree?

Thanks,

Kippy

cyborgii | Wed, 2008-11-26 05:56

Hi Kippy,

we had the very same issue.
Have you entered a port number?
Once we entered the default port number 21 for FTP the problem went away.

Hope this helps,
Gregor

Kippy | Wed, 2008-11-26 07:29

Yep, once I added the port numbers (21 for FTP, 22 for SCP) there were no additional prompts :-)

Strange that it's able to connect to the server successfully to get the directory structure etc. just by assuming the port numbers from the protocol specified, and the problem only comes up when opening a file.

Thanks

Kippy

toddw
ActiveState Staff
Wed, 2008-11-26 13:00

Thanks for the reports and the workaround, it helped to track down the problem:
http://bugs.activestate.com/show_bug.cgi?id=81137

You'll still need to user the workaround until this can be fixed properly in the Komodo codebase (likely 5.1.0).

Cheers,
Todd

nphyn1t3 | Fri, 2009-04-10 11:06

Well the work around poses a problem for me but more so it's marked fixed/solved/resolved as of 5.0.2 However I'm running Komodo Edit, version 5.1.1, build 3355, platform win32-x86.
Built on Wed Apr 01 08:16:13 2009. and I have this problem. Setting the ports doesn't fix anything. Does anyone have something further to suggest?

toddw
ActiveState Staff
Sat, 2009-04-11 09:43

Please ensure your "Remote drive tree" extension is the latest version: 1.3.0.

If it's up-to-date, can you add your specific problem/details to the above bug report.

Specifically I'd like to know:
* full path of the filename in question
* Komodo server preference settings (alias, port, path, username, etc...)

Thanks,
Todd

nphyn1t3 | Tue, 2009-04-28 13:55

OK so you want a few things but I'm unsure of what your really asking so let's go through this piece by piece.

Please ensure your "Remote drive tree" extension is the latest version: 1.3.0.

--- It is

If it's up-to-date, can you add your specific problem/details to the above bug report.

--- meaning --> http://bugs.activestate.com/show_bug.cgi?id=81137

Specifically I'd like to know:
* full path of the filename in question

--- from what perspective, the web server root, the servers full file system path, or network to webserver root to file?

* Komodo server preference settings (alias, port, path, username, etc...)

--- This is a huge list, happens on all servers server type ftp, port (this never saves in Komodo so all the discussion about 1 vs -1, or actual port number is moot for me as Komodo always discards this) hostname 192.168.X.X yada yada

--- there is no difference if I use a domain name or if I have files being opened locally off local network addresses.

sonnynobucks | Wed, 2008-12-17 09:32

I love this extension, is there a way to "sync" server configurations between mac, win, linux?

Scott

toddw
ActiveState Staff
Wed, 2008-12-17 12:03

There is no way to currently sync the server settings.

You could use a Komodo macro to dump out the accounts and then the same to read them in, it's a bit of work, but it's possible.

Komodo needs a generic sync extension, one that can easily synchronize the different settings in Komodo, such as the server preferences, toolbox, keybinding / color schemes, etc...

Cheers,
Todd

dpush | Mon, 2008-12-22 07:34

how go up from default directory?

toddw
ActiveState Staff
Mon, 2008-12-22 12:25

The remote drive tree is a simplistic view of the filesystem and does not provide a way to move above the default directory.

You can use Komodo's "File->Open->Remote File" dialog to navigate around the remote file system, or change the starting directory to "/".

Cheers,
Todd

confiq | Tue, 2008-12-23 13:04

Hi Todd
I see you are only one here who is answering, even answering ridicules questions (ex. parent dir).

There is something missing in FTP client of komodo which i really miss. It's:

1) caching. Using caching of ls of files would be perfect!
2) progress bar. Sometimes it takes minutes to get list of files of server (specialy if it's slow server). It would be nice to see some icon while it's loading.
3) writing code while loading. I'm using Komodo edit 5.0.3 and it stucks while loading files. it would be nice to make it background progress so i could keep writing the code while loading.

Best regards

toddw
ActiveState Staff
Fri, 2009-01-30 12:44

Komodo does cache the remote file information for both the remote drive tree and the "Open->Remote file" dialog, and there is a "Refresh the current Directory" button on both of these UI elements.

Yes, asynchronous loading with a progress bar would be a nice feature (points 2 and 3), it's on the cards but not implemented yet.

baron | Thu, 2009-09-10 21:38

Also it would be great if saving was done in the background. It's annoying that saving currently locks the interface.

nathan | Wed, 2009-03-25 09:32

Is it just me or has this stopped working in 5.1? When I switch to the "Servers" tab I just get a grey tab with no content.

Note that I'm using the latest Nightly and I'm not sure if it worked on 5.1 Final..

toddw
ActiveState Staff
Wed, 2009-03-25 10:25

Hi Nathan,

It's working for me on Linux / Ubuntu. Are there any errors in the Komodo log files:
http://community.activestate.com/faq/komodo-file-locations#log_files

Cheers,
Todd

cyborgii | Wed, 2009-03-25 10:52

Hi,

It's working on Windows Vista 64 as well and even imported
my seeting from 5.0 :-)

Gregor

nathan | Thu, 2009-03-26 06:22

Hi Todd, the psystderr.log has quite some messages in it, what I did is I cleared it, restarted Komodo and checked it again.. there were a couple of lines.. I then switched to the "Servers" tab and the error log grew significantly..

Here are the contents (Komodo Edit, version 5.1.1, build 3301, platform win32-x86)

C:\Program Files\ActiveState Komodo Edit 5\lib\mozilla\python\komodo\Crypto\Hash\SHA.py:6: DeprecationWarning: the sha module is deprecated; use the hashlib module instead
  from sha import *
C:\Program Files\ActiveState Komodo Edit 5\lib\mozilla\python\komodo\Crypto\Hash\MD5.py:6: DeprecationWarning: the md5 module is deprecated; use hashlib instead
  from md5 import *
[2009-03-26 09:18:27,157] [ERROR] extensions.sourcetree: Loading Tree[object Object]
[2009-03-26 09:18:34,703] [ERROR] KoObserverService:
Traceback (most recent call last):
  File "C:\Program Files\ActiveState Komodo Edit 5\lib\mozilla\components\koObserverService.py", line 82, in __init__
    osSvc.addObserver(self._nsIObserver, 'xpcom-shutdown', 1)
  File "<XPCOMObject method 'addObserver'>", line 3, in addObserver
Exception

... addObserver exception aboves repeats 20 times ...

toddw
ActiveState Staff
Thu, 2009-03-26 11:39

Hi Nathan,

Try disabling some of the other extensions, such as the "Source Tree" extension (and other third-party extensions) to see if these are the cause of the problem.

Cheers,
Todd

nathan | Thu, 2009-03-26 11:54

Thanks Todd, the problem was caused by JSTreeDrive.

cosmicbdog | Mon, 2009-04-13 02:06

I just added a remote folder and thought it didn't work, until I restarted Komodo and the new server was there. Is that normal / acceptable behavior around these parts?

cosmicbdog | Mon, 2009-04-13 04:14

I didn't notice the reload button there. Quite obviously. I thought on adding a new server it would refresh. Thanks

toddw
ActiveState Staff
Mon, 2009-04-13 11:40

Nod, it should be made to automatically refresh. There is a bug on this limitation here:
http://bugs.activestate.com/show_bug.cgi?id=57127

aether | Mon, 2009-07-27 10:40

I am getting the following javascript error when clicking on a server to expand its directories:

"Connection error: Operation now in progress"

This just started happening today for some reason. Can't think of anything I would have changed between yesterday and today that might cause this. I can connect to the servers in question fine with other ftp clients.

I have tried reinstalling the extension, disabling all other extensions, restarting, etc. I'm using the latest version of Komodo on a Mac.

Any thoughts? Thank you.

EDIT: Actually it appears this is happening within Komodo itself. I'll seek a solution there. Thanks.

nlpdragon | Tue, 2010-01-05 20:09

I created an ssh account on my webserver, and have been able to access it using Putty and Puttyagent without any manual intervention.
(I am using windows 7)

So I installed remote Drive Tree on Komodo Edit.
Komodo Edit, version 5.2.4, build 4343, platform win32-x86.

I Created an scp server configuration for my server,
and when I select my server and click Refresh Current Directory, it gives me a wait cursor for a couple of seconds and then returns with nothing listed.

I found the following in my pystderr.log:

[2010-01-05 18:31:36,961] [ERROR] RemoteDriveTree: 
-- EXCEPTION START --
+ message (string) 'rowItem is undefined'
+ fileName (string) 'chrome://remotedrivetree/content/remotedrivetree.js'
+ lineNumber (number) 176
+ stack (string) 224 chars
+ name (string) 'TypeError'
*
(-1)@chrome://remotedrivetree/content/remotedrivetree.js:176
RemoteDriveTreeRefreshDirectory()@chrome://remotedrivetree/content/remotedrivetree.js:813
oncommand([object XULCommandEvent])@chrome://komodo/content/komodo.xul:1
-- EXCEPTION END --

[2010-01-05 18:31:36,964] [ERROR] RemoteDriveTree: 
-- EXCEPTION START --
+ message (string) 'rowItem is undefined'
+ fileName (string) 'chrome://remotedrivetree/content/remotedrivetree.js'
+ lineNumber (number) 176
+ stack (string) 224 chars
+ name (string) 'TypeError'
*
(-1)@chrome://remotedrivetree/content/remotedrivetree.js:176
RemoteDriveTreeRefreshDirectory()@chrome://remotedrivetree/content/remotedrivetree.js:814
oncommand([object XULCommandEvent])@chrome://komodo/content/komodo.xul:1
-- EXCEPTION END --

[2010-01-05 18:31:50,124] [ERROR] RemoteDriveTree: 
-- EXCEPTION START --
+ message (string) 'rfInfo is null'
+ fileName (string) 'chrome://remotedrivetree/content/remotedrivetree.js'
+ lineNumber (number) 402
+ stack (string) 333 chars
+ name (string) 'TypeError'
*
([object Object],0,false)@chrome://remotedrivetree/content/remotedrivetree.js:402
selectServerDirectory([object Event])@chrome://remotedrivetree/content/remotedrivetree.js:767
onselect([object Event])@chrome://komodo/content/komodo.xul:1
select(0)@:0
onxblmousedown([object MouseEvent])@chrome://global/content/bindings/tree.xml:951
-- EXCEPTION END --

[2010-01-05 18:31:55,763] [ERROR] RemoteDriveTree: 
-- EXCEPTION START --
+ message (string) 'rfInfo is null'
+ fileName (string) 'chrome://remotedrivetree/content/remotedrivetree.js'
+ lineNumber (number) 220
+ stack (string) 225 chars
+ name (string) 'TypeError'
*
(0)@chrome://remotedrivetree/content/remotedrivetree.js:220
toggleOpenState(0)@:0
changeOpenState(0)@chrome://global/content/bindings/tree.xml:227
onxblclick([object MouseEvent])@chrome://global/content/bindings/tree.xml:994
-- EXCEPTION END --

[2010-01-05 18:32:07,016] [ERROR] KoObserverService: 
Traceback (most recent call last):
  File "C:\Program Files (x86)\ActiveState Komodo Edit 5\lib\mozilla\components\koObserverService.py", line 99, in _getLiveObservers
    if not callable(wr) or wr() is not None:
  File "C:\Program Files (x86)\ActiveState Komodo Edit 5\lib\mozilla\python\xpcom\client\__init__.py", line 528, in __call__
    return Component(self._comobj_.QueryReferent(iid)._comobj_, iid)
  File "", line 3, in QueryReferent
Exception
[2010-01-05 18:32:07,016] [ERROR] KoObserverService: 
Traceback (most recent call last):
  File "C:\Program Files (x86)\ActiveState Komodo Edit 5\lib\mozilla\components\koObserverService.py", line 99, in _getLiveObservers
    if not callable(wr) or wr() is not None:
  File "C:\Program Files (x86)\ActiveState Komodo Edit 5\lib\mozilla\python\xpcom\client\__init__.py", line 528, in __call__
    return Component(self._comobj_.QueryReferent(iid)._comobj_, iid)
  File "", line 3, in QueryReferent
Exception
[2010-01-05 18:32:07,467] [WARNING] KoObserverService: observers not removed: ([''],)
[2010-01-05 18:32:07,467] [WARNING] KoObserverService: observers not removed: ([''],)
[2010-01-05 18:32:07,467] [WARNING] KoObserverService: observers not removed: ([''],)
[2010-01-05 18:32:07,579] [WARNING] KoObserverService: observers not removed: ([''],)
[2010-01-05 18:32:07,734] [WARNING] KoObserverService: observers not removed: (['hyperlinksEnableGotoDefinition', 'rubyDefaultInterpreter', 'diskStatusEnabled', 'start_page_mru_box_closed', 'start_page_quick_links_box_closed', 'keybindingDisableAccesskeys', 'phpDefaultInterpreter', 'editUseLinting', 'phpConfigFile', 'diskBackgroundCheck', 'diskBackgroundMinutes', 'history_loc_expiry_days', 'phpCommentStyle', 'start_page_landing_box_closed', 'pythonDefaultInterpreter', 'userEnvironmentStartupOverride', 'perlDefaultInterpreter', 'editAutoIndentStyle'],)

Any Suggestions?

toddw
ActiveState Staff
Wed, 2010-01-06 11:12

This problem is likely because you haven't yet selected a server to connect to - click on the Name of your scp server in the left pane first and then all should operate well and good.

I'll fix this to warn of this problem in the next remote drive tree version/release.

Cheers,
Todd

camaleo | Thu, 2010-03-11 01:21

Hi,

I am facing the same issue when trying to connect via simple ftp (port 21) on a local server and a remote one.

I can see both servers in the Files sidebar but, when I open the Servers sidebar its empty.

Both servers are configured in the preferences.

Using Komodo Edit, version 5.2.4, build 4343, platform linux-libcpp6-x86_64. Built on Tue Dec 8 18:57:48 2009.

What am I doing wrong?

toddw
ActiveState Staff
Thu, 2010-03-11 12:20

Try refreshing the list of servers (there is a button on the top of the remote drive tree toolbar).

camaleo | Fri, 2010-03-12 01:56

Hallo,

I am a bit confused about where I can find the refresh button. Please see my screenshots showing the 'files' and 'servers' sidebars at:

http://grandolini.net/idee/komodo/

Thank you

toddw
ActiveState Staff
Fri, 2010-03-12 10:41

From your screenshot it looks as though the toolbar does not exist - it should look like the main screenshot at the top of this page.

My guess is that there is a problem loading the UI for the remote drive tree extension - perhaps there is a conflict caused by another extension you have installed (i.e. probably the jsdrivetree extension). Try disabling this (and other extension(s) if necessary) that you've added to see if this then loads the remote drive tree extension correctly.

Cheers,
Todd

camaleo | Mon, 2010-03-15 00:45

you are right, by disabling the jsdrivetree extension I can now use this one.

thanks!

gabs | Wed, 2010-01-13 07:35

You Sir (and the maker of a similar extension) have made Komodo IDE something I can actually use.
It is beyond my comprehension why this is not a standard feature of Komodo IDE.
I and most of my colleagues work on remote servers 99% of the time.

Cheers,
gabs

cyberswat | Sat, 2010-01-30 09:21

Is it possible to use this extension with servers that only support certificate based authentication?

Connection error: Remote SSH server does not allow password authentication. Allowed types are: 'publickey, gssapi-with-mic

toddw
ActiveState Staff
Mon, 2010-02-01 11:52

Yes, it is possible to use certificate based authentication methods with Komodo.

You do this through a key agent (such as "ssh-agent" or "Pageant"):
http://docs.activestate.com/komodo/5.2/files.html#files_public_key_auth

Cheers,
Todd

danwalton | Tue, 2011-05-10 05:46

Ubuntu/gnome handles the ssh-agent automatically - however the magic setting, from the perspective of komodos' server configuration gui, remains elusive. Any insider info?

*edit* Found it, the public key still needs to be added to ssh-agent using ssh-add :)

lybo | Sat, 2010-02-27 05:26

how to create a new remote file?
I need this option....

toddw
ActiveState Staff
Mon, 2010-03-01 12:02

The remote drive tree does not have a new remote file command.

You can use Komodo's "File->New->New File" dialog to create a new remote file.

Cheers,
Todd

lybo | Tue, 2010-03-02 00:34

I' m web developer and speed is important thing in our work and without a new remote file command ? waste a valuable time.

Can you suggest another plugin?

I love komodo features but without a new remote file command I cannot use it

vipx1 | Mon, 2010-03-08 16:22

This is a great addition to Komodo Edit. I start a new file from my templates and then use the "Save Remotely As" feature to put the new file on my webserver.
It's good because I have different templates for different servers which all the correct etc. I even put some php require in there too and then remove them if not needed. Saves me remember passwords and stuff..
Komodo is good because it is not too full on!
Notepad or gedit being basic. Netbeans being serious head recken' pro stuff.
Then Komodo Edit is in the middle.

nphyn1t3 | Thu, 2010-04-15 13:10

I installed this and realized after a few min of restarting Komodo I had no servers listed, and no server list refresh button. The "Sever' refresh button tells me to select a server to refresh but it doesn't list anything to select. All my server settings are intact, reverting to 1.3.1 works fine.

Win 7 x64 - Komodo Edit, version 5.2.4, build 4343, platform win32-x86.
Built on Tue Dec 08 19:21:07 2009.

ofarchmin | Mon, 2010-05-31 00:15

Hi Todd,

I installed and use this extension for 2 weeks. Excellent, quick, easy ...

Is it possible to include the browser in the right pane (where the toolbox is shown)? I like it to have the utilities on the right site on a second monitor.

Thx

Oliver

toddw
ActiveState Staff
Mon, 2010-05-31 14:38

Hi Oliver,

Yes, you should be able to use Tweak UI to move the servers tab to the other side.

Cheers,
Todd

ofarchmin | Mon, 2010-05-31 23:18

Thanks, that's it.

greetings
Oliver

ofarchmin | Tue, 2010-06-01 05:46

Hi Todd,

now I've got the problem that no servers are visible if the tab is in the right pane.

After the first move (to the right pane) there are no servers shown. Moving back to the left pane they are still missing.
If I disable the remoteDriveTree and enable it again, the servers are shown, but only if it's in the left pane.

Do you have an idea why this happens?

Thanks
Oliver