Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    David L. Goldberg
    @DavidLGoldberg
    I was going to call it back-jumpy
    John Wright
    @johngeorgewright
    I like the idea. Kind of a automatic marker.
    I'm assuming you could jump back several places in your history
    John Wright
    @johngeorgewright
    This looks similar to what you're suggesting...
    https://atom.io/packages/last-cursor-position
    David L. Goldberg
    @DavidLGoldberg
    hah, yeah when I last looked at that thing (I think it was that one) it didn't work, and had the most crazy logic I've ever seen.... not sure that's the one I'm thinking of though... but anyway, I think debounce might just be magic... have to experiment with it.
    I saw your PR it's amazing
    I'll investigate this weekend
    David L. Goldberg
    @DavidLGoldberg
    I'm doing some cleanup.... particularly though to prep for some mobx integration. @johngeorgewright I think you'll like it... I might have you reshape some of the stuff you did.... or I might be able to just pull it in and refit it in... definitely want your commits to be in there....rather than just copy and paste your work of course :worried: ....this mobx stuff is amazing... have you used it? If not I think you'll love it.
    I'm not done but I think it will make things a bunch easier.
    as i'm doing this.. i just decided to compare to some of your refactors....similar
    David L. Goldberg
    @DavidLGoldberg
    the label-manager ish stuff....
    particularly...pull out the require for 'Point', and 'Range' .......drawLabels and drawBeacon
    priority #1 heh
    when i'm all done with the mobx stuff i'll create a PR, and have you and maybe a few other people eyeball it before pushing it... I think the tree view stuff can go a lot easier after that.. we'll see... I'll definitely get it in there! heh
    David L. Goldberg
    @DavidLGoldberg
    first time I've had in a while..
    David L. Goldberg
    @DavidLGoldberg

    hi guys, if curious, here's a PR I've made...it has 2 commits (read individually) 1. Pulls out a bunch of stuff from jumpy-view to a labels.coffee ... 2. refactors a bunch of code with mobx..... The mobx added net 19 more LOC according to the stat, but I think the code is a lot cleaner / flexible. @johngeorgewright I think your PR for tree view....the labels can be almost unioned in...I had an idea, but I'd have to rethink about it...

    There's a small outstanding 2 bugs with "Jump Mode!" in the status on open (2nd time) and with too many calls to reset (the backspace) ....I'll make 2 tests tonight, and can probably fix both with one line of initialization / reset or something.Hold off a little maybe before reapplying your work... I have to re read your stuff and see how difficult it would be for you to apply the same approach on top (probably cut and pasting some code on top of the new master would be easiest... I don't want to just steal your stuff I want you to get credit :smile:

    I'm pretty gung ho about this mobx approach though. Unless everyone thinks I'm nuts...

    BTW, new Atom release the tests run in half the time (master branch too)..

    DavidLGoldberg/jumpy#98
    David L. Goldberg
    @DavidLGoldberg
    When I'm done with the above tests/fix -> rebase squash down to that one commit..I'm going to post it on discuss.atom.io ....I did a search and there's no mention of mobx .....anywhere. Crazy.
    See what people think / maybe start a trend.
    @johngeorgewright I was thinking ......we'd take my 2 commits...and whatever your PR on top looks like....and call it 4.0.0 ...technically "breaking" in that it changes functionality and .....total new architecture so major version bump worthy I think.
    sorry for the delay, was kind of busy and also had to learn a lot more mobx heh
    David L. Goldberg
    @DavidLGoldberg
    @johngeorgewright just so you know, big refactor coming soon, it somewhat facilitates the kind of stuff you did in that last PR (tree view). Don't think I forgot about your work, just been a bit busy....I tried mobx, didn't love it for Jumpy, landed on javascript-state-machine ....also improved the tests a bit....
    not this weekend, but the following, going to put a lot of time in
    David L. Goldberg
    @DavidLGoldberg
    FYI: DavidLGoldberg/jumpy#108
    David L. Goldberg
    @DavidLGoldberg

    @johngeorgewright Your treeview PR inspired a complete rewrite.....well like 3 rewrites..... first some refactors for modularization then I went to mobx (won't find it in the commits) .....replaced that with javascript-state-machine ...(still in there) went to Javascript -> Typescript... and then built an OOish interface / class thing with typescript kind of similar to what you did....

    I think you'll like it.....it should be easy to copy the new tabs labeling feature .....one file 100 LOCish and turn it into tree view. I did the tabs functionality because I thought it was easier, and wanted to see if you wanted to take a look at another round of the tree view (all of your styling code should still work I might be able to cherry pick it in)

    That is, if you're not busy and interested! If not I can look at it in the next few weeks. My next adventure is to replace a lot of the javascript-state-machine stuff with elm believe it or not. My goal is to have elm-> typescript .....and that arch in both VS Code and Atom...

    Wabbit
    @hrishikeshvganu
    Jumpy can't move to characters like start of bracket ( etc. Is there a plan to add this functionality?
    David L. Goldberg
    @DavidLGoldberg
    @hrishikeshvganu sorry for the delayed response.... there are some plans....should be listed in the issues as well. Just yesterday someone opened an issue pointing to a fork addressing some of those issues. It might be a while, but it's definitely planned.
    ithil
    @ithil
    Hi! :) Back in version 3 I hacked my jumpy so it supported multiple modes/patterns. So for example I had separate keybindings for jumping to quotation marks or to whitespace characters.
    Now the code has become more complex and doesn't seem to lend itself so easily to hacking it in this way, what with there being multiple labelers and them all being in separate files.
    So what my old hack basically did was look into a .json file with the mode names and their regexps listed and then create atom commands for each of them.
    Could you give me some pointers how do this elegantly in the current version? I would probably have to hack the settings here and change the wordsPattern, right? And then I would have to remove tabLabels and treeItemLabelsfrom allLabels.
    Or is there any more elegant way? :)
    For what my hack in version 3 looked like see here: https://gist.github.com/ithil/98949b5dd02365623954fd8790768103
    David L. Goldberg
    @DavidLGoldberg
    Hi, don't have to read this at the moment, but I want to get try and get back to you ASAP. I would think you would not have to remove tab and tree, you should be able to just extend / adjust wordsPattern and the wordsLabeler whatever it's called. Basically it unions all of the sets.
    You should almost definitely not have to touch the elm / state machine for instance.
    Check some PR's and the threads, some people have done some crazy custom stuff I wasn't ready to take all at once either because not piece meal or broke tests / (which at the moment aren't doing so good :\ )
    (at least on travis)
    ithil
    @ithil

    Hi, thanks for responding! I got it working the way it worked before for me! :) However, it's really hacky and there are some things I simply don't understand, like for example why you have to use this.commands.add(atom.commands.add(/*.....*/)) and why simply calling atom.commands.add(/*.....*/) isn't working anymore.

    Also, I edited the Javascript file directly because the TypeScript simply wouldn't compile for me. It was complaining about errors in files I hadn't even edited. But then, I've never worked with TypeScript before, so maybe I made some mistake(s) somewhere.

    As soon as I find the time again I'll look into it again, clean my code a little and put it in a gist. :)

    David L. Goldberg
    @DavidLGoldberg
    the commands.add is a container for disposables and or commands in this case (kind of just an atom clean up thing). That's been around for quite a while. You probably got away without it....but there'd be a memory leak (probably, or at least possibly) I use atom-typescript plugin to compile the TS -> JS. I don't know if I have that in the readme anywhere though :-O