Ted2Go IDE

Home Forums Monkey 2 Projects Ted2Go IDE

Tagged: ,

This topic contains 530 replies, has 40 voices, and was last updated by  nerobot 1 day, 16 hours ago.

Viewing 15 posts - 481 through 495 (of 531 total)
  • Author
    Posts
  • #11069

    nerobot
    Participant

    I’m interested in is there someone who use project folder filtering via project.json ?

    • This file should be placed in project folder root.
    • Supported only “exclude” parameter yet.

    Project filter was introduced 4th december.. 🙂

    http://monkeycoder.co.nz/forums/topic/ted2go-fork/page/6/#post-5582

    There is my project.json file for Ted2Go:

    There is no regexp, but a little magic with * char:

    • *filter (starts with star) – check text.StartsWith( filter );
    • filter* (ends with star) – check text.EndsWith( filter );
    • *filter* (starts and ends) – check text.Find( filter );
    • filter (w/o stars) – check equals, text = filter.
    #11074

    Diffrenzy
    Participant

    I don’t use the project filter function, but it looks useful.

    Could it read my .gitignore file instead, because it already selects almost the same files?

    #11078

    Ethernaut
    Participant

    This kind of filtering is incredibly useful, but it’s not working well for me.

    Behavior is kinda random… sometimes the filter is not applied until I switch away from ted2Go, then back. Sometimes the filter is applied when alt+tab switching, but all files under subfolders disappear.

    I’m also confused with the explanation for the use of *. You say that *filter checks for text that starts with filter, but your example project.json file has the string *.products, which doesn’t seem to work. Shouldn’t it be .products* if you want to check for strings that end with .products? I mean, until regexp is supported.

    Cheers.

    #11081

    Mark Sibly
    Keymaster

    Think you’ve got startswith/endswith mixed up wrt: the ‘*’ filter.

    Also, just added a tiny regex module called tinyregex to develop branch if that’s useful. Only one function for now: Function re_match:Int( pattern:CString,text:CString ), returns index of match or -1 for no match.

    Just discovered the c++11 std library actually has a regex engine which may or may not be better, but is at least guaranteed to be bigger! I’ll look at implmenting this later if necessary.

    Regex’s aren’t quite like yer standard file filters though, think I prefer plain file filters. Maybe * in filter could be replaced with .* or something before being regexed?

    #11082

    nerobot
    Participant

    Does anyone else experience the IDE throttling CPU? Right now it’s at 98% CPU on my MacBook Air early-2014, and it regularly idles around 15% CPU on my desktop Windows 10.

    I hope with v1.1.08 compiler things will became better.

    Could it read my .gitignore file instead, because it already selects almost the same files?

    Maybe in a future, when regex will be a core part of monkey2.

    Behavior is kinda random… sometimes the filter is not applied until I switch away from ted2Go, then back. Sometimes the filter is applied when alt+tab switching, but all files under subfolders disappear.

    Just collapse then expand root project node should adjust filtering.

    Another problem to be fixed here – I’m using App.Idle to process tree, but it works only when there are sdl events, else it’s waiting for any event and then call Idle().

    I’m also confused with the explanation for the use of *. You say that *filter checks for text that starts with filter, but your example project.json file has the string *.products, which doesn’t seem to work. Shouldn’t it be .products* if you want to check for strings that end with .products?

    You are right, thanks!

    Think you’ve got startswith/endswith mixed up wrt: the ‘*’ filter.

    Probably yes. Will fix.

    Also, just added a tiny regex module called tinyregex to develop branch if that’s useful.

    Nice!

    Regex’s aren’t quite like yer standard file filters though, think I prefer plain file filters. Maybe * in filter could be replaced with .* or something before being regexed?

    Don’t know yet. 🙂

    #11086

    Ethernaut
    Participant

    Tried collapsing the root and expanding it. Works fine with this:

    "exclude":["*.buildv*","*products*"]

    But does not like when I add files that start with dots, like this:

    "exclude":["*.buildv*","*products*",".git"]

    This initially works after I alt+tab, but if i collapse the root and expand again, all filters are ignored. I can alt+tab again and the filters are reapplied, but now all files in subfolders disappear. 🙁

    Also tried with other macOS and Linux hidden files, like “.DS_Store”, and ran into the same problems.

    Thanks!

    <edit>

    This works. I just can’t use the dot in the beginning of the filename…

    "exclude":["*.buildv*","*products*","*DS*"]

    But somehow this doesn’t work, and causes the same problems as before…

    "exclude":["*.buildv*","*products*","*DS*","*git*"]

    #11134

    nerobot
    Participant

    Yay! I rewrite Project tree while fixing files filtering logic. Now it should work properly.

    What’s new in dev branch:

    • Project (Explorer) tree:
      • Added – storing/restoring of expanded items, and selected item – you will see tree state on start app the same as when closed it;
      • Fixed – expanding behaviour for double-clicks (also have-no-icons bug fixed);
      • Fixed – files filtering – read more here;
      • Added – option “Project tree single-click mode” into ‘Prefs — Common’ (False by default).
    • Fixed – crash using backspace at the end of file;
    • Fixed – IntelliSense + Zoom out #2;
    • Improved – correct “Find results” when remove / add lines in document;
    • Fixed – broken Ins/Ovr shitching by Ins key;
    • Fixed – capitalizing when press space / tab;
    • Improved – Source tree expanding state (was collapsed after parsing);
    • Improved – jump to find result – made centered line with result;
    • Added – Simple_Mojo3d_app template into ‘File — Templates’ (it’s bloom test file).

    It’s still v2.7. Please, test it. 🙂

    If all is OK I want to merge it into master.

    #11202

    sLiveR
    Participant

    Hi,

    is it possible to add “Codefollowing”?
    For example:

    I have a Function DoSomething(text:String, posX:Int, posY:Int)

    I write in the Editor DoSomething(“Hello”
    Then it Show me the IntelliSense like This: DoSomething(text:String, posX:Int, posY:Int)

    DoSomething(“Hello”,10   looks like this: DoSomething(text:String, posX:Int, posY:Int)

    Hope you get the point ^^

    Greetings from Germany!

    PS.: Really good work!

    #11206

    nerobot
    Participant

    Greetings from Russia. 😉

    I like that too. Maybe can add soon.

    (I already done with that in jentos.code – IDE for monkey-x.)

    #11209

    sLiveR
    Participant

    Nice! 😀

    #11345

    nerobot
    Participant

    Some new stuff in v2.7 (in dev branch, will be merged into master today)

    • Improved autocompletion for pointer-types.
    • Added -> for dereferencing pointer types (v1.1.08 is coming with that).
    • Added option “Place opened document to the left side” – it helps to use “Close to the right” tabs action for earlier opened tabs.
    • Improved code templates – added dot-prefixes.
    • Restored logic “save all opened tabs before compilation”.

    Code templates

    1. Use Tab or mouse-click to choose template from completion list.
    2. You can add/remove your own templates in Preferences — CodeTemplates section.
    3. Now templates showing in completion even for ‘unknown’ vars (local variables).
    4. Now we can specify ‘where’ to show templates by adding dot-prefixes:
      • Without dots – shows only for single idents like abc
      • Single dot . – shows for any idents: single like abc ; and dot-separated like abc.def
      • Double dot .. – shows only for dot-separated idents like abc.def
    5. Dots are used just for definition not for typing in code.

    Examples

    (^ it’s part of json, internal presentations of templates ^)

    If we typed on a new line adc we can’t see ..adc template in completion because double-dots prefix require instanse.

    But abrakadabra.a shows us adc template in the list, and we can insert AddComponent<>() by pressing Tab.

    .len will work for both len and arr.len cases.

    And each template will work when it typed as a single ident and will don’t work for myVar.each.

     

    It’s useful for me, and you? 🙂

    #11451

    nerobot
    Participant

    I finished working on drag-n-drop inside of project tree.

    Now we can organize our project folder structure without leaving IDE!

    There can be some minor bugs. And need to gain window focus on files dropped…

    Doing that I separated draggable tabs’ logic into own class(es) to re-use it

    for any drag-n-drop stuff. Including project tree.

    New in Project tree:

    • Drag-n-drop for moving files and folders – just hold mouse left button and drag up or down until detach item;
    • Hold Ctrl key to copy item instead of move;
    • Drag-n-drop files / folders from your desktop explorer directly into custom folder in Project tree – to copy items into that folder;
    • If you drop folder into project tree but on empty space – it will be opened as a project;
    • Drop folder outside of project tree now have no effect;
    • Drop files outside of project tree will open them as usual.

    See the GIF below.

    #11453

    CopperCircle
    Participant

    Nice!

    #11492

    nerobot
    Participant

    Thanks!

    New stuff in dev branch: Project tree – added Cut / Copy / Paste actions on files and foldes.

    Now we can create copy of files, with showing “enter new name” dialog if file or folder already exists.

    Comfortable and rapid development is here. 🙂

    #11537

    Hezkore
    Participant

    A lot of stuff keeps appearing outside of the dropdown boxes for me.

    I can’t read the last item in this list:

Viewing 15 posts - 481 through 495 (of 531 total)

You must be logged in to reply to this topic.