hydrargyrum / eye

Edit Your Editor: a scriptable Qt-based text editor - mirror of https://gitlab.com/hydrargyrum/eye
Do What The F*ck You Want To Public License
15 stars 1 forks source link

Removing module/packages inter-dependencies #21

Open brupelo opened 6 years ago

brupelo commented 6 years ago

Below there is a fast analysis of module/packages inter-dependencies:

root
    __init__ ->                 {}
    __main__ ->                 {app}
    app.py ->                   {three, qt, __init__}
    colorutils.py ->            {three}
    connector.py ->             {qt, three, utils, __init__}
    consts.py ->                {}
    io.py ->                    {utils}
    lexers ->                   {}
    pathutils ->                {}
    procutils ->                {three, qt}
    qt ->                       {__init__}
    reutils ->                  {}
    structs ->                  {}
    three ->                    {}
    utils ->                    {}

    widgets
        dialog.py ->            {widgets.helpers}
        droparea.py ->          {}
        editor.py ->            {three, connector, widgets.helpers, qt, __init__}
        eval_console.py ->      {three, app, utils, qt, widgets.helpers}
        filechooser.py ->       {three, structs, consts, widgets.helpers, helpers}
        helpers.py ->           {connector, qt}
        locationlist ->         {three, widgets.helpers, consts, connector, qt, helpers.intent}
        minibuffer ->           {three, app, connector, qt, widgets.helpers}
        misc ->                 {app, qt, widgets.helpers}
        search ->               {three, consts, widgets.helpers, helpers, reutils, qt, widgets.locationlist}
        splitter ->             {consts, widgets.helpers, qt}
        tabs ->                 {consts, three, qt, connector, widgets.droparea, widgets.helpers, helpers}
        window ->               {connector, three, qt, consts, widgets.helpers, widgets.editor, widgets.tab, widgets.splitter, widgets.droparea}

    helpers
        _lexercolorgroups ->    {three}
        actions ->              {three, connector, qt, __init__}
        bookmarks ->            {connector, helpers.actions}
        buffers ->              {connector, app, widgets.helpers}
        build ->                {connector, procutils, pathutils, qt}
        build_annotations ->    {connector, pathutils, helpers.buffers, helpers.styles}
        build_locationlist ->   {connector, pathutils, app, consts, widgets.locationlist}
        confcache ->            {qt, three, helpers.file_monitor}
        editor_search ->        {connector, widgets.editor, widgets, three, qt, __init__, helpers.buffer}
        file_monitor ->         {three, qt, connector}
        file_search ->          {connector, reutils, app, helpers.file_search_plugins, helpers.intent}
        focus_light ->          {connector, app, colorutils, widgets.helpers}
        folding ->              {connector, widgets.editor, qt}
        intent ->               {connector, structs}
        keys ->                 {three, helpers.actions, pathutils}
        lexer ->                {connector, lexers}
        lexercolor ->           {three, connector, colorutils, lexers, helpers._lexercolourgroups, helpers.styles}
        macros ->               {connector}
        margins ->              {connector}
        minimap ->              {connector, widgets.editor, widgets.window, widgets.helpers, three, qt}
        nav_history ->          {app, connector}
        projects ->             {qt, connector, reutils, __init__, helpers.widgets}
        qt_all ->               {}
        qt_doc ->               {}
        quote_surround ->       {connector}
        remote_control ->       {three, connector, app, qt, __init__, helpers.intent}
        script_reload ->        {three, app, connector, qt, helpers.file_monitor}
        session ->              {three, connector, pathutils, widgets.window, widgets.splitter, widgets.tabs, widgets.editor}
        styles ->               {}

Comments:

aurelVZ commented 3 years ago

what i exectly need to compile this on my win7 32bit os i have portable py 3.8.2

brupelo commented 3 years ago

You've got the requirements listed here https://github.com/hydrargyrum/eye/blob/master/requirements.in , after that it should run out of the box.

I've found a problem with this project (which has some really great ideas)though), it was the same problem i've faced couple of years ago when I was trying to create my own sublimetext clone and failed miserably :) ... it's based on QScintilla, and while this widget has some goodies it's pretty limiting as it doesn't support properly multiple/selections, ie: try to undo/redo when making multiple selections and you'll see. Other than that, good luck ;)