CrowTDE is an [open source] Tcl/Tk development environment written in Tcl/Tk. Its purpose is to provide a convenient environment for Tcl/Tk programmers. Currently CrowTDE runs on [Linux] and [Microsoft Windows], while we are try to retrofit further versions which will run on more platforms as well as more features in the near future. Hope you will like it. ---- Download: http://crowtde.sourceforge.net (Version 0.5, latest version as of 2007/03/15, support Subversion) '''Features''' * Supports source code debugging (breakpoints, stepping, watch variables, and more). * Project manager (easy to organize projects, folders, files). * Procedure navigator (fast location and jump to procedure). * Multifile editing. * Colored syntax-highlighting. * Interactive syntax completion. * Easy to Run/Stop Tcl/Tk scripts (just click on toolbar buttons). * Native language support. * Support for [Nagelfar] (static syntax-checking). * Support for [Starkit] (generate binaries for Windows or Linux). * Integrated Tcl/Tk documentation. * Autoindent/outdent block selection. * Integrated MP3 player. * Code templates. * Graphical search tools (easy to search files and search in files). * Find/Replace keyword in editors. * Support for Subversion. ---- '''Requirements''' * [Tcl]/[Tk] v8.4.12 above (required) - http://www.tcl.tk/software/tcltk/ * [BWidget] v1.7 above (required) - http://tcllib.sourceforge.net/ * [treectrl] v2.1 above (required) - http://tktreectrl.sourceforge.net/ * [TkPNG] v0.3 above (required) - http://www.muonics.com/FreeStuff/TkPNG/ * [tdom] 0.81 above (required) - http://www.tdom.org/ * [snack] v2.2 above - http://www.speech.kth.se/snack/ * [tkhtml3] (required) - http://tkhtml.tcl.tk/tkhtml.html * [twapi] (required) - http://twapi.sourceforge.net/ *Windows platform only ---- ''[escargo] 6 Mar 2006'' - This is interesting, but does it really need to have threading? What features would need to be excluded if no threading is available? (I probably don't need an integral MP3 player ;-) ''[CrowMan] If no threading: Proc explore, Syntax-highlighting and some features will fail.'' ''[escargo]'' - I downloaded the CrowTDE_v0.1_beta code, but running it on my [ActiveState] 8.4.11 installation fails with the "package require Thread" command. I see that the "package require snack" is in a catch block. Would that make sense for Thread as well? As near as I can tell, the Thread extension is not available on the ActiveState Windows distribution. (At least it is not listed here: http://aspn.activestate.com/ASPN/docs/ActiveTcl/at.pkg_index.html). Where did you get your version of Tcl/Tk for [Microsoft Windows]? [MG] [ActiveTcl] was not built with threads enabled in version 8.4.11 (except on OSX). I believe 8.4.12 may have been, though I can't find the email where I thought I'd seen that announced, atm, and haven't downloaded it to check (I still use 8.4.9). [CrowMan] I try to run CrowTDE on ActiveTcl 8.4.11.2 (Windows), it can work. [MEd] It works fine for me: [ActiveTcl] 8.4.12.0, WinXP SP1 - so I guess MG is right and 8.4.12 was built with threads enabled. [AK], March 16 2006: Only the Windows and OS X distributions of [ActiveTcl] are currently [thread]-enabled. ---- Install On [Linux]: 1. First, you needed install required packages. (source archive include all you needs, but tcl/tk) 2.extract the archive (vvv is the version number) $ tar zxvf CrowTDE-vvv.tar.gz 3.change to the CrowTDE directory $ cd CrowTDE 4.start CrowTDE $ wish CrowTDE.tcl 5.Enjoy! Install On [Microsoft Windows]: Easiest method is download [ActiveTcl]8.4.12 (or above) version, after finish install ActiveTcl8.4.12, just double click the CrowTDE.tcl ^.^! ---- Screenshots On [Linux] [http://crowtde.sourceforge.net/images/l_demo00.png] [http://crowtde.sourceforge.net/images/l_demo01.png] [http://crowtde.sourceforge.net/images/l_demo02.png] On [Microsoft Windows] [http://crowtde.sourceforge.net/images/demo00.png] [http://crowtde.sourceforge.net/images/demo01.png] [http://crowtde.sourceforge.net/images/demo02.png] ---- [RLH] While I wouldn't want an mp3 player...it looks nice. [CrowMan] If you have not install [snack] library, mp3 player will disabled itself. ---- [MEd] Hm, I created a new project and now get an error when I try to add a blank File (File -> New -> Blank): Error: invalid command name "::inputDlg::show" It now works after I added package require inputDlg to CrowTDE.tcl [CrowMan] Thanks, the bug already fixed. ---- [schlenk] 15/04/2006: I played a bit with CrowTDE and found it really nice and with a polished UI but missed some of the nice features from ASED. Suggestions: * Add static syntax checker based on [nagelfar]. * Add direct links to tcl documentation when marking an option or command an pressing a key or in the context menu. * Display the list from [package names] when writing a [package require] command. ---- [MEd] 2006/04/15 - Have you ever thought about creating a CrowTDE-[starpack]? Would make the application even more attractive - at least for me ;-) ---- [CrowMan] 2006/04/16 - We are try to retrofit further versions which will add these functions. Thanks! ^-^ ~ ---- [male] 2006/04/24 - Could someone please point out, where to get a multi-threaded tdom version? I have a tdom 0.81 version, but it is single-threaded and ... the www.tdom.org website only provides "old" sources or DLLs of the version 0.80. Perhabs someone can send me per eMail the current, multi-threaded version? Thanks, Martin [CrowMan] 2006/04/24 - Maybe you can try to get tdom0.81 from ActiveTcl(version 8.4.13). [UKo] 2006-04-27: [dqkit] is a threaded tclkit on steroids and includes tdom 0.8.1 ---- [male] 2006/04/24 - Ok, I just found the problem. It is was about having tdom 0.8.0 and 0.8.1 and always tcl tried to load the 0.8.0 version. But know there is an error during startup: invalid command name "TreeCtrl::SetEditable" while executing "TreeCtrl::SetEditable $tree {{colFileTree style txt}}" (procedure "::fmeProjectManager::tree_init" line 24) invoked from within "::fmeProjectManager::tree_init $path" (procedure "::fmeProjectManager::init" line 8) invoked from within "::fmeProjectManager::init $fmePrjMgr.body" (procedure "::fmeTabMgr::init" line 12) invoked from within "::fmeTabMgr::init $lrFrame.fmeTabMgr" (procedure "::crowTde::init" line 180) invoked from within "::crowTde::init """ (file c:\temp\crowtde-0.1.3\CrowTDE\CrowTDE.tcl" line 383) ---- [CrowMan] To [male] : Can I know what version of Tcl/Tk you have? What is't your Tktreectrl version? ---- [male] 2006/04/24 - Ok (again), I had in "my" tcl library path the treectrl versions 1.0, 1.1, and 2.1. After deleting the really old ones, CrowTDE started. Thanks! Now I'll try out a bit! ---- '''What about a starkit?''' [UKo] 2006-04-27: to try out CrowTDE on linux without changing my global tcl installation I tried to run it with the help of [tclkit]. After finding a threaded version with [dqkit] I have to make only a small change to make CrowTDE run smoothly. I don't know why, but dqkit gives a ''memory access error'' when loading package img::png but [tkpng] runs just fine and works with CrowTDE. So I copied the package to lib, replaced the reference to img::png in ''lib/crowImg.tcl'' with tkpng and removed the one from CrowTDE.tcl -- and it worked! ---- [CrowMan] 2006-04-27: I had to try creating CrowTDE-[starkit] and running with [dqkit] (on WinXP). It can run but has some troubles. Can someone help me ? - Slave thread can't access vfs file from parent thread. - Some tcl command can't work fine. (Ex. exec source) [CrowMan] 2006-04-27: I had fixed up those problems. ^o^ ---- [GJS] Great editor, I just have a couple suggestions. What about making the help load in the tabs, the same area as the editor windows, and making it so you can raise the tabs to the desktop so you can view a document in the main tde window and one in a seperate toplevel child. this would be especially nice with multiple monitors. It would allow you to put the help on one monitor and the editor on the other monitor. It would also be nice to be able to reorder tasks, or have a task priority, and to be able to hide finished tasks, and search tasks. Task state could be "Not Started", "In Progress", and "Finished". [CrowMan] To [GJS] : Ok! I will try . Thanks your suggestions . ^o^ ---- [schlenk] 2006-04-29: Some more suggestions and some small noticed errors. * Add the ability to use a tab of 4 spaces instead of the default 8 spaces, as much Tcl code is formatted with tab 4 * If one does not open a project but only a single file, the options for save/save as are not available from the menu * If one deletes a file from a project that is opened in the editor pane strange effects occur, while trying to close the currently edited file. * The package prototype is a bit unidomatic, there is really no real reason in Tcl to use an init function with: ::pkgname::Init {argc argv} {} probably better: ::pkgname::Init {args} {} and then parse that for arguments and options. * It would be nice to add support for *.test files containing tcltest code for parts of a project and maybe some templates for a basic tcltest file (see for example http://www.tclscripting.com/articles/apr06/article1.html or the testsupport code in tcllib) * If your at it, consider adding the graphical testrunner from tcllib/apps to the TDE for running tcltests for a project in a graphical frontend [CrowMan] 2006-04-29 To [schlenk] : Thanks your suggestions. First, we will to fix the "4 spaces of Tab", "single file save/save as", "delete file" and "argc argv" problems. Others functions for TDE, we will addition to near future version. ---- [pcam] 2006-07-25: Refresh issue Maybe this is not the appropriate place to do this (a bug reporting and tracking ala sourceforge would be excellent). I noticed that with ActiveTcl 8.4.12 running version 0.4.2 (starkit version) there was a wish window raised/un-raised. I found that changing the Options->Proc Details->Refresh Interval would change how often it happens. Note that this is only when the edit panel is open with some text. Otherwise, I love CrowTDE, kudos for this excellent work. [CrowMan] 2006-07-26 To [pcam] : Thanks your report. The problem is because you choose a not appropriate "Tcl Interpreter". Please go to "Options -> Settings- > General / Tcl Interpreter" and make sure setting is currectly. (do not use wish or starkit) [pcam] 2006-07-26: Thanks [CrowMan], that was it. Will there be any bug report/tracking and maybe contributing placeholder. I'd be willing to help (translate in French and more). [CrowMan] 2006-07-26 : Thanks [pcam]. I need your help to translate in French if you willing. Maybe you can mailto: dai@turtle.ee.ncku.edu.tw ---- [DSC] 2006-08-16 To [CrowMan] I have tried your program. However, it is missing some debug commands such as "Step over" and "Step in" [CrowMan] 2006-08-17 To DSC : Thanks DSC. I will add those features in future version. ---- [male] - 2007-03-15: I just downloaded the last current installation and tried a bit, but there are some questions: * is Nagelfar included? * if not, why is there no error message if trying to use it, or why are the button and the notebook page not disabled? * if it is, why there are no outputs, if if the source definitely contains errors? * so are there prequisites to be full filled, before using Nagelfar? * trying to run the script, the current opened script file lead to nothing - no error messages from the errornous script, nothing. What prequisites must be full filled, to run a single opened file (not a project member file)? * the proc notebook page at the left side of the UI didn't show any procedure. I changed the source, so that the procedure was outside the namespace definition (namespace eval), but it didn't change anything. What is to be done, to let this work? How must the source be formatted? * is there a hotkey/shortcut to jump between opening and closing braces, brackets, paranthesis, or quotes? * it is good to have such a complete documentation with CrowTDE, but where is the documentation about CrowTDE itself? And a suggestion ... * first the backgrounds - I work all day with [Vim] and I often try different IDE's to find out, if it's good to change. But none really made me wanting to change. One reason is, that working with all the [Vim] hotkeys/shortcuts makes me working very quickly. And learning how to work with another IDE seems to be ... not really necessary. It's enough to work with Visual Studio and [Vim]. * now the suggestion - what's with an [Vim] emulation inside the editor window? Thanks and hold on this quite good IDE - Martin [dai] 2007-03-15 : I am CrowMan. * CrowTDE included Nagelfar. There is a "Syntax check" button on toolbar. It can help to check current opened script. * About "Procedure navigator" problems. This is because syntax parser not robust enough.If there is not correct braces "Procdure navigator" will be empty. I will trying to fix the bug. * There are not any english documentations for CrowTDE. Because my english is not good enough. sorry~~ Thanks your suggestions. [male] - 2007-03-16: Hi [dai], thanks for your reaction! * about Nagelfar - I already tried Nagelfar on a definetly errornous script file, but there was no action, no result in the Nagelfar window, nothing. That's the reason, why I asked for any prequisites to be full filled. * about the "Procedure Navigator" - the script file I tried with Nagelfar contains a very complicated regular expression (extended format with comments). Perhabs the "Procedure Navigator" has problems with the "\{", "\[", etc. inside the regular expressions. * the documentation about CrowTDE itself would be very usefull. CrowTDE has so many features, that this documentation could really help. Sadly I couldn't help you to write the documentation, because I only speak German and English. But someone else would help you? What's about asking in comp.lang.tcl for help? Bye and a nice weekend! Martin ---- [RLH] In looking at some of the screenshots, a suggestion I would make when creating your own dialogs...make the buttons the same width so they look uniform. [dai] 2007-03-15 : Thanks your suggestion. ---- [RJM] I installed CrowTDE (Windows XP). It works quite fine. However, I did not find a feature of updating single procs in a running script. Upon desire, I could contribute to such a feature (dependent on how the debug communication path is realized). [Category Dev. Tools] [Category Debugging]