{Ninja-IDE Is Not Just Another IDE}

Overview

Ninja-IDE Is Not Just Another IDE

Build Status PRs Welcome Gitter

Ninja-IDE is a cross-platform integrated development environment (IDE) that allows developers to create applications for any purpose making the task of writing software easier and more enjoyable. It's also a secret ninja agency but this doesn't matter right now.

Ninja-IDE logo

Important

Currently version 3.0 is being developed, therefore this branch is unstable. This set of issues lists the tasks we must complete to get to a beta version.

Requirements

On any system you want Ninja-IDE, you'll need to have this dependencies installed:

  • Python 3.4+
  • PyQt5 5.6+
  • python3-pyqt5.qtquick
  • qml-module-qtquick2

Cloning and Running

You can clone this repo and simply execute:

git clone git://github.com/ninja-ide/ninja-ide.git
cd ninja-ide
python3 ninja-ide.py

Piece of cake, huh?

Ninja contact

Feedback

Videos

Ninja-IDE Videos and Screencasts

Contributing

If you are interested in fixing issues and contributing directly to the code base, please see the document How to Contribute.

License

  • GPLv3+ (GPLv3 or any other later version published by FSF at your option)
Comments
  • ninja-ide does not start,

    ninja-ide does not start, "ImportError: No module named QtWebKit" (Ubuntu 16.10)

    I installed ninja-ide from the ninja-ide PPA today, but it fails to start. Installation from the Ubuntu Software Center yields the same result.

    [email protected]:~$ ninja-ide Traceback (most recent call last): File "/usr/bin/ninja-ide", line 34, in ninja_ide.setup_and_run() File "/usr/lib/python2.7/dist-packages/ninja_ide/init.py", line 71, in setup_and_run core.run_ninja() File "/usr/lib/python2.7/dist-packages/ninja_ide/core/core.py", line 48, in run_ninja from ninja_ide.gui import ide File "/usr/lib/python2.7/dist-packages/ninja_ide/gui/ide.py", line 45, in from ninja_ide.core import plugin_services File "/usr/lib/python2.7/dist-packages/ninja_ide/core/plugin_services.py", line 29, in from ninja_ide.gui.main_panel import main_container File "/usr/lib/python2.7/dist-packages/ninja_ide/gui/main_panel/main_container.py", line 36, in from ninja_ide.gui.main_panel import tab_widget File "/usr/lib/python2.7/dist-packages/ninja_ide/gui/main_panel/tab_widget.py", line 40, in from ninja_ide.gui.main_panel import browser_widget File "/usr/lib/python2.7/dist-packages/ninja_ide/gui/main_panel/browser_widget.py", line 27, in from PyQt4.QtWebKit import QWebView ImportError: No module named QtWebKit

    opened by wwklnd 33
  • [WIP] Fix issue #2009

    [WIP] Fix issue #2009

    When a new file is saved, this file have the python file "format"

    • [x] Resaltar sintáxis explícitamente.
    • [x] Agregar la feature al menú contextual de ActionBar.
    • [x] Resaltar cuando se guarda un archivo nuevo.
    opened by eamanu 22
  • Sintax Highlighter dead on click

    Sintax Highlighter dead on click

    Sintax Highlighter dead on click, drop to plain color, massive error messages on stdout, IDE still works but without highlights, with Python files ( *.py ), the error is per-Tab, only happens on click at text editor area (on change cursor position via mouse click), 1 line .py files is enough to make highlighter die.

    Ninja-IDE Daily from PPA ( ninja-ide_2.1.1+r521~raring1 ) , Qt 4.8.4, Python 2.7.3, running on Ubuntu 13.04 64Bit, tested with Guest user and no extensions.

    Full Traceback: http://paste.ubuntu.com/1667475/ (the more files more output)

    I think there are a Bug Report already of this but maybe is Closed or Deleted or something ( https://github.com/ninja-ide/ninja-ide/issues/search?q=highlight&state=open&assignee= )

    opened by ghost 18
  • Bug al eliminar un archivo

    Bug al eliminar un archivo

    Pasos para reproducir este bug:

    Tener un proyecto e ir a la pestaña correspondiente. Eliminar un archivo del proyecto (medio molesto, hay que aceptar dos dialogos)

    Que anda mal:

    El archivo sigue viéndose en la pestaña por mas que ya no esta

    SO

    W7 x64

    opened by Pablo2m 14
  • Backspace deleting 3rd letter to the right of cursor.

    Backspace deleting 3rd letter to the right of cursor.

    I've just pulled from origin and noticed that something is weird with backspace key.

    Hitting backspace while in the middle of the word is deleting third letter to the right side of the cursor instead of the first one to the left. For example, if 'abcdefgh' is my word and cursor's position is just after 'd', hitting backspace is deleting 'g'. When the cursor is at the end of the last word of the last line, it works fine.

    abcdef
    123456
    

    If the cursor is after 'f' and when I hit backspace, '2' is being deleted.

    opened by vamc19 13
  • Windows 10 does not start ninja ide

    Windows 10 does not start ninja ide

    Does not start ninja ide Windows 10 RU Errors ocured in log file

    Traceback (most recent call last): File "ninja-ide.py", line 34, in File "ninja_ide__init__.pyc", line 71, in setup_and_run File "ninja_ide\core\core.pyc", line 49, in run_ninja File "ninja_ide\gui\ide.pyc", line 602, in start File "ninja_ide\gui\ide.pyc", line 89, in IDE File "ninja_ide\gui\ide.pyc", line 129, in init File "ninja_ide\gui\ide.pyc", line 284, in load_ui File "ninja_ide\gui\misc\misc_container.pyc", line 49, in MiscContainer File "ninja_ide\gui\misc\misc_container.pyc", line 81, in init File "ninja_ide\gui\misc\find_in_files.pyc", line 367, in init File "ninja_ide\gui\misc\find_in_files.pyc", line 180, in init File "ntpath.pyc", line 301, in expanduser UnicodeDecodeError: 'ascii' codec can't decode byte 0xc4 in position 9: ordinal not in range(128)

    opened by rdacomp 12
  • lint:ok hint does not appear to ignore PEP-8 / E501: line too long

    lint:ok hint does not appear to ignore PEP-8 / E501: line too long

    When specifically ignoring a line with PEP-8 / E501 (line length > 80 characters as it's a URL), the appended # lint:ok comment does not clear the yellow underline or tooltip.

    Example on the URL below:

    """
            An answer to
            http://stackoverflow.com/questions/375427/non-blocking-read-on-a-subprocess-pipe-in-python  # lint:ok
            seems to have the method - combining a Queue and threading
            in order to allow non-blocking reads.
    """
    

    Currently running Version 2.1.1, from Ubuntu daily PPA repository. Please advise if the latest version in Git would resolve.

    opened by jbillo 12
  • Layout improvements

    Layout improvements

    It would be nice if we could have an additional layout structure. It's quite useful for me to have the file browser and symbol browser in the same column. Other possible layout would be to have the open files + the symbol window in the same column. The error font is too big in my opinion and forces you to resize the editor just to see the error. I know you can see it directly, but sometimes is quite useful to go directly to this screen.

    opened by aaloy 12
  • Preferences not available

    Preferences not available

    When using the latest version on Linux (both Fedora and Mint) the preference Window isn't available. When I open it only a very small part is shown. I'm not able to maximize it, and therefore aren't able to change my preferences. On windows this problem doesn't occur.

    opened by osscca 11
  • Freezes at startup

    Freezes at startup

    Traceback (most recent call last):
      File "ninja-ide.py", line 34, in <module>
        ninja_ide.setup_and_run()
      File "/media/secondary/proj/ninja-ide/ninja_ide/__init__.py", line 71, in setup_and_run
        core.run_ninja()
      File "/media/secondary/proj/ninja-ide/ninja_ide/core/core.py", line 49, in run_ninja
        ide.start(filenames, projects_path, extra_plugins, linenos)
      File "/media/secondary/proj/ninja-ide/ninja_ide/gui/ide.py", line 609, in start
        current_file, recent_files)
      File "/media/secondary/proj/ninja-ide/ninja_ide/gui/ide.py", line 315, in load_session_files_projects
        self.mainContainer.open_file(current_file, notStart=False)
      File "/media/secondary/proj/ninja-ide/ninja_ide/gui/main_panel/main_container.py", line 465, in open_file
        tabIndex, positionIsLineNumber, notStart)
      File "/media/secondary/proj/ninja-ide/ninja_ide/gui/main_panel/main_container.py", line 516, in __open_file
        self.tr("The file couldn't be open"), reason)
    TypeError: arguments did not match any overloaded call:
      QMessageBox.information(QWidget, QString, QString, QMessageBox.StandardButtons buttons=QMessageBox.Ok, QMessageBox.StandardButton defaultButton=QMessageBox.NoButton): argument 3 has unexpected type 'NinjaIOException'
      QMessageBox.information(QWidget, QString, QString, int, int button1=0, int button2=0): argument 3 has unexpected type 'NinjaIOException'
      QMessageBox.information(QWidget, QString, QString, QString, QString button1Text=QString(), QString button2Text=QString(), int defaultButtonNumber=0, int escapeButtonNumber=-1): argument 3 has unexpected type 'NinjaIOException
    

    This happens when a project is removed from disk, I assume as I did that, but not from ninja IDE.

    Ninja IDE freezes at startup and cannot proceed.

    opened by shuhaowu 11
  • No module named Qsci

    No module named Qsci

    Ninja IDE: 3.0+r929~ubuntu14.04.1

    Currently: Ninja IDE fails to start, with the following error:

    File "/usr/share/ninja-ide/ninja_ide/gui/editor/extended_lexers/python_lexer.py", line 21, in <module>
        from PyQt4.Qsci import QsciLexerPython
    ImportError: No module named Qsc
    

    This can be fixed by installing python-qscintilla2 from the Universe repository, so I suspect that the resolution will be to add the python-qscintilla2 as a dependency for the Ubuntu package.

    opened by mpj17 10
  • Repo Cloning

    Repo Cloning

    Hi, When I used git clone git://github.com/ninja-ide/ninja-ide.git on linux, the terminal gave the following output:

    Cloning into 'ninja-ide'...
    fatal: remote error:
      The unauthenticated git protocol on port 9418 is no longer supported.
    Please see https://github.blog/2021-09-01-improving-git-protocol-security-github/ for more information.
    

    I replaced the git:// with https:// which worked. Please replace the clone line with: git clone https://github.com/ninja-ide/ninja-ide.git

    Thanks and keep up this amazing IDE, pythoncoder8888

    opened by perspector 0
  • Is the ninja-ide project still being actively maintained in 2022?

    Is the ninja-ide project still being actively maintained in 2022?

    It looks from the main page there haven't been any stable releases since 2019. Does this project still have active maintainers and developers? Thanks.

    opened by mray271 10
  • ImportError: cannot import name 'Callable' from 'collections' (C:\Program Files\Python310\lib\collections\__init__.py)

    ImportError: cannot import name 'Callable' from 'collections' (C:\Program Files\Python310\lib\collections\__init__.py)

    Hello, at running i had this problem: ImportError: cannot import name 'Callable' from 'collections' (C:\Program Files\Python310\lib\collections_init_.py)

    opened by nickgomez-tech 0
  • ninja-ide-git on Manjaro is broken by python update to 3.10 and also by shift from Qt5 to Qt6

    ninja-ide-git on Manjaro is broken by python update to 3.10 and also by shift from Qt5 to Qt6

    Hello,

    ninja-ide-git on Manjaro is broken by python update to 3.10 (collections.Callable needs replacement by collections.abc.Callable in a lot of files) and also by shift from Qt5 to Qt6, and that is far more difficult to correct... ;=)

    opened by Armag67 0
  • FAILED TO EXECUTE

    FAILED TO EXECUTE

    I am using windows 10 i install NINJA IDE and when i open it error message displayed telling me that failed to execute this shows dme every time .when i uninstall it ninja data is not removed from its folder in which it is save .This is irritating please fix this. Thank you

    opened by ABDULBASITLATIF 0
Releases(v2.4)
Vim plugin for executing Python's optional static type checker MyPy

Vim plugin for executing Python's optional static type checker MyPy

Mark McDonnell 91 Dec 04, 2022
Python-Text-editor: a simple text editor on Python and Tkinter

Python-Text-editor This is a simple text editor on Python and Tkinter. The proje

Innokentie 1 Jan 03, 2022
PlugNik is a simple implementation of plugin repository for JetBrains Application.

PlugNik is a simple implementation of plugin repository for JetBrains Application.

roy reznik 11 Jun 30, 2022
The uncompromising Python code formatter

The Uncompromising Code Formatter “Any color you like.” Black is the uncompromising Python code formatter. By using it, you agree to cede control over

Python Software Foundation 30.7k Jan 02, 2023
Jupyter Interactive Notebook

Jupyter Notebook The Jupyter notebook is a web-based notebook environment for interactive computing. Notice Please note that this repository is curren

Project Jupyter 9.7k Jan 02, 2023
awesome Python autocompletion with SublimeText

SublimeJEDI SublimeJEDI is a Sublime Text 3 and Sublime Text 2 and plugin to the awesome autocomplete library Jedi Python Version Support Sublime Jedi

Serhii Ruskykh 933 Dec 08, 2022
Cameray is a lens editor and simulator for fun.

Cameray is a lens editor and simulator for fun. It's could be used for studying an optics system of DSLR in an interactive way. But the project is in a very early version. The program is still crash-

Shuoliu Yang 59 Dec 10, 2022
A simple Notepad-like editor written in Python

monkepad A simple Notepad-like editor written in Python Since MonkePad is written in one file, all your customization can be done without much trouble

5 Dec 28, 2021
Python IDE for beginners

Thonny Thonny is a Python IDE meant for learning programming. End users See https://thonny.org and wiki for more info. Contributors Contributions are

Thonny, Python IDE for beginners 2.1k Jan 02, 2023
A small, simple editor for beginner Python programmers. Written in Python and Qt5.

Mu - A Simple Python Code Editor Mu is a simple code editor for beginner programmers based on extensive feedback from teachers and learners. Having sa

Mu 1.2k Jan 03, 2023
A gui-script-editor(Based on pyqt5, pyautogui) to writing your gui script.

gui-script-editor A gui-script-editor(Based on pyqt5, pyautogui) to writing your gui script. ##更新说明 版本号:1.0.0 版本说明:实现了脚本编辑器雏形,未实现执行报告,自动化脚本管理(只支持单个脚本运

2 Dec 22, 2021
ReText: Simple but powerful editor for Markdown and reStructuredText

Welcome to ReText! ReText is a simple but powerful editor for Markdown and reStructuredText markup languages. One can also add support for custom mark

ReText 1.6k Dec 23, 2022
Emacs Python Development Environment

Elpy, the Emacs Python IDE Elpy is an Emacs package to bring powerful Python editing to Emacs. It combines and configures a number of other packages,

Jorgen Schäfer 1.8k Jan 02, 2023
A very simple Editor.js parser written in pure Python

pyEditor.js A very simple Editor.js parser written in pure Python. Soon-to-be published on PyPI. Features: Automatically convert Editor.js's JSON outp

Kevo 7 Nov 01, 2022
An experimental code editor for writing algorithms

Algojammer Algojammer is an experimental, proof-of-concept code editor for writing algorithms in Python. It was mainly written to assist with solving

Chris Knott 2.9k Dec 27, 2022
A JupyterLab extension for version control using Git

A JupyterLab extension for version control using Git

JupyterLab 1.2k Jan 03, 2023
Leo is an Outliner, Editor, IDE and PIM written in 100% Python.

Leo 6.3, http://leoeditor.com, is now available on GitHub. Leo is an IDE, outliner and PIM. The highlights of Leo 6.3 leoAst.py: The unification of Py

Leo Editor 1.4k Dec 27, 2022
Encriptificator is a text editor app developed by me as a personal project.

Encriptificator is a text editor app developed by me as a personal project. It provides all basic features of a text editor with the additional feature of encrypting your files. To know more about ho

1 May 09, 2022
Using the jedi autocompletion library for VIM.

jedi-vim - awesome Python autocompletion with VIM jedi-vim is a VIM binding to the autocompletion library Jedi. Here are some pictures: Completion for

Dave Halter 5.1k Dec 31, 2022
A WYSIWYG layout editor for Jupyter widgets

Based on the React library FlexLayout, ipyflex allows you to compose the sophisticated dashboard layouts from existing Jupyter widgets without coding. It supports multiple tabs, resizable cards, drag

Duc Trung LE 93 Nov 24, 2022