Updated Autocomplete for Python 3
Noah Black last edited by
I’ve been using NPP as my Python editor ever since I started learning it. I first learned Python 2.7, and NPP has support for Python 2.7’s syntax, and hints on what functions do when I typing them (like telling me what parameters I need). This was all very helpful when learning, and is something I still appreciate.
However, I have recently updated to Python 3.7, and there are some changes between these versions. NPP still gives me suggestions as though I’m using Python 2.7, even though I don’t even have it installed on my computer anymore.
This is best seen when getting user input. In Python 2.7, input() was a function that would only accept and return integers as input, and raw_input() was a function that would accept any input because it would be returned as a string.
In Python 3.7, there is no such function as raw_input(). It was removed, and now input() uses strings instead of integers.
However, NPP still tells me that input() returns an integer (in a round-a-bout sort of way) and that a function called raw_input() exists and returns a string.
How do I make NPP give suggestions for Python 3 instead of Python 2?
Ekopalypse last edited by
The autoComplete files are available within autoCompletion directory.
The file you are looking for is called python.xml.
In addition you might add/change the langs.xml file, or in case you use a theme different to default theme the THEME_NAME.xml from theme directory, in order to get the new keywords.
Note, adding keywords can also be done by using the gui
PeterJones last edited by
Alan Kilborn last edited by
There was also a recent issue filed regarding this: https://github.com/notepad-plus-plus/notepad-plus-plus/issues/6259 “Fix keywords list according to Python 3”