{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)
openBrowsser is a Sublime Text plug-in, which allows you to add a keyboard shortcut, to directly access a website from a selection.

openBrowsser is a Sublime Text plug-in, which allows you to add a keyboard shortcut, to directly access a website from a selection. Instal

Florian COLLIN 1 Dec 14, 2021
Komodo Edit is a fast and free multi-language code editor. Written in JS, Python, C++ and based on the Mozilla platform.

Komodo Edit This readme explains how to get started building, using and developing with the Komodo Edit source base. Whilst the main Komodo Edit sourc

ActiveState Komodo 2k Dec 28, 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
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
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
A basic Python IDE made by Anh Đức

Python IDE by Anh Đức A basic Python IDE made with python module tkinter. Hope you enjoy this IDE! V 1.3 "Open Terminal from IDE" feature V 1.2 Now yo

1 May 30, 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
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 powerful text editor for MATE

Pluma - The MATE text editor General Information Pluma (pluma) is a small and lightweight UTF-8 text editor for the MATE environment. It started as a

MATE Desktop 134 Dec 31, 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
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
A JupyterLab extension for version control using Git

A JupyterLab extension for version control using Git

JupyterLab 1.2k Jan 03, 2023
Frappe tinymce - Frappe app to replace default text editor with tinymce

Frappe tinyMCE tinyMCE Text Editor for frappe apps Replace frappe's Quill Text E

Shridhar Patil 23 Nov 16, 2022
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 code-completion engine for Vim

YouCompleteMe: a code-completion engine for Vim NOTE: Minimum Requirements Have Changed Our policy is to support the Vim version that's in the latest

24.5k Dec 30, 2022
Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box.

Python-mode, a Python IDE for Vim This project needs contributors. Documentation: :help pymode https://github.com/python-mode/python-mode/wiki Importa

The Python-Mode 5.4k Jan 01, 2023
Official repository for Spyder - The Scientific Python Development Environment

Copyright © 2009–2021 Spyder Project Contributors Some source files and icons may be under other authorship/licenses; see NOTICE.txt. Project status B

Spyder IDE 7.3k Dec 31, 2022
JupyterLite is a JupyterLab distribution that runs entirely in the browser power by wasm

JupyterLite is a JupyterLab distribution that runs entirely in the browser built from the ground-up using JupyterLab components and extensions.

Jeremy Tuloup 76 Dec 13, 2022