GithubHelp home page GithubHelp logo

Comments (1)

asmeurer avatar asmeurer commented on May 26, 2024 2

So far I've basically just been writing this project for me. I use it every day, but I've never written it with one person in mind. This simplifies the design quite a bit as I don't have to worry about configuration or anything like that. You'll also notice that there isn't a setup.py and it isn't in any package manager. I myself just run it directly from the git repo.

I might consider making this something that other people can use, but only if there is genuine interest. If you want to know what this is like, I would suggest just trying it. You can install the dependencies from requirements.txt and start it with ./bin/mypython after cloning the repo.

The README lists all the main features. It's kind of hard to show off things with a picture or video. The most obvious "feature" you would see in a screenshot is the stupid emoji prompts, but those are just a meme, and not really that essential. The main features are things like multiline input and syntax highlighting, but that comes from prompt-toolkit so will be supported equally well by something like IPython. The other main things are default key bindings which I consider to be sane (impossible to show in a screenshot), syntactically correct tokenization for things like parentheses matching (e.g., not treating "(") as a matching pair like IPython does), and a select number of features like ? and a few %magic commands borrowed from IPython, but working in a way that I consider to be clean.

Making this work for other people would entail adding customization and extensibility (which would add a lot of complexity to the code), probably changing a few of the defaults, and adding several features that I don't care about but other people might care about (like some of the IPython %magic commands that I never use). Plus standard maintenance stuff that I've ignored, like packaging, doing releases, making changes to PRs instead of committing directly to master, using the issue tracker, adding documentation, and so on.

I am open to this, but really only if there is someone who is interested in not only using it, but contributing to it as well, as that's the only way I could sustain the extra maintenance burden from the extra complexity. Otherwise, I'm happy with the README just listing the features and explaining what this is. I will always keep it open source, but I'm not really going to advertise it as something that people should use, as that would just be false advertising.

from mypython.

Related Issues (1)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.