You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+28-21Lines changed: 28 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,57 +3,62 @@
3
3
4
4
PyPadPlusPlus is an interactive Python environment based on Notepad++ (https://notepad-plus-plus.org/) and PythonScript (https://github.com/bruderstein/PythonScript/).
5
5
6
-
Its special property is a fusion of the interactive Python shell with the editor to one single tool. This means that the editor can be used for both interactive testing of code and storing the commands permanently as part of your algorithm. So, you never have to copy code lines again from the editor to the shell or back. The output appears in a second frame, which is an output-only area, while the editor is an input-only area.
6
+
Its special property is a fusion of the interactive Python shell with the editor to one single tool. This means that the editor can be used for both interactive testing and storing the final code. So, you never have to copy code lines again from the editor to the shell or back. The output appears in a second frame, which is an output-only area, while the editor is an input-only area.
7
7
8
-
To execute one line or a piece of code press `<Shift> + <Enter>`. This executes the current line or the smallest number of lines belonging syntatically to the selection. No precise selection is required in order to execute valid parts of the code. The whole script can be executed with the selection of all by `<Ctrl> + <A>`. Cells of code can be optionally defined by special comments starting with `#%%`. In any case you have the choice whether you want to execute cells, single lines or code selections. With the mouse wheel button you can execute any line or piece of code by one click. The output is shown in an output console frame. The console has an undo buffer for every execution that produced some output.
8
+
To execute one line or a piece of code press `<Shift> + <Enter>`. This executes the current line or the smallest number of lines belonging syntatically to the selection. No precise selection is required in order to execute valid parts of the code. The whole script can be executed with the selection of all lines by `<Ctrl> + <A>`. Cells of code can be optionally defined by special comments starting with `#%%`. In any case you have the choice whether you want to execute cells, single lines or code selections. With the mouse wheel button you can execute any line or piece of code by one click. The output is shown in an output console frame. The console has an undo buffer for every execution that produced some output.
9
9
10
-
By selecting a variable and hovering over it with the mouse or pressing `<Shift> + <Ctrl> + <Space>` will show a popup with information about its current type and value. Autocompletion lists for objects and dictionaries allows you to explore the current run-time information of a variable.
10
+
Selecting a variable and hovering over it with the mouse or selecting any expresion and pressing `<Alt> + <Space>` will show a popup with information about its current type and value. This also supports numpy shape information. Autocompletion lists for objects and dictionaries allows you to explore the current run-time information of a variable.
11
11
12
12
The extension comes with another little feature that fits perfectly in the workflow of PyPadPlusPlus. It allows you to log small pieces of code you wish to keep but don't know where to store. Just select any piece of code and press the keyboard shortcut `<Alt> + <S>`. The selection will be added to a file `codeSnippetsLog.txt` with the time and date in a comment line. Pressing the shortcut again without any selection opens this file. It acts as a kind of "Python diary" for code snippets.
* Run Python code line-by-line with `<Shift> + <Enter>`
19
19
* Run selected Python code (intelligent selection, no accurate selection is required)
20
20
* Run line or selection with middle mouse button
21
21
* Run line or selection multiple times while cursor does not propagate (`<Shift> + <Ctrl> + <Enter>`)
22
-
* Run cells of python code defined by `#%%` comments with `<Shift> + <Enter>`
22
+
* Run cells of python code defined by `#%%` comments with `<Shift> + <Enter>` whey the cursor is at this comment line
23
23
* A color marker highlights last executed lines
24
24
* Animated color marker for active lines
25
-
* Tooltip for run-time variable and object inspection of selected items and mouse hover or `<Shift> + <Ctrl> + <Space>`
25
+
* Tooltip for run-time variable and object inspection of selected items and mouse hover or `<Alt> + <Space>`.
26
+
* Evaluate variables below the cursor or any selected expression with `<Alt> + <Space>`, even some code is still running
26
27
* Special Tooltip with size and shape information of numpy arrays
27
-
* Evaluate variables or any selected expression (e.g. with `<Shift> + <Ctrl> + <Space>`), even if some code is still running
28
28
* Code auto completion for run-time defined object properties, dictionary keys, function calls
29
29
* Calltip for function calls, doc string and module help
30
-
* Special Tooltip to switch quickly between `True` and `False`
30
+
* Special Tooltip to quickly switch between `True` and `False`
31
31
* Click on any Tooltip to show full string or help text in output console
32
32
* Output console has an undo buffer (click inside and press `<Ctrl> + <z>`)
33
33
* Clear output console with `<Shift> + <Ctrl> + <C>`.
34
-
* Internal or external Python distribution can be used, including Python 3 kernels.
35
-
* Take controll over Notepad++ with the Npp module provided by PythonScript (only available when using the internal Python. Load with `import Npp`)
36
-
* Reset and restart Python kernel with `<Alt> + <R>`, e.g. when stuck in endless loop. (only available when using an external Python)
34
+
* Internal or external Python distribution can be used for Python 3 kernels.
35
+
* Take controll over Notepad++ with the Npp module provided by PythonScript (only available when using the internal Python. Load library with `import Npp`)
36
+
* Reset and restart Python kernel with `<Alt> + <R>`, e.g. when stuck in endless loop. (only available when using an external Python, otherwise this only performs a variable reset)
37
37
* Matplotlib event handler to hold multiple active plot windows
38
38
39
-
#### Roadmap
40
-
Planned feature:
41
-
* Remote kernel mode to run the code via network on any remote server that has Python installed, e.g. on raspberry PI.
42
-
43
39
#### Download
44
40
45
-
PyPadPlusPlus requires Notepad++ and PythonScript. Since the installation is quite cumbersome you can download the [latest release](https://github.com/bitagoras/PyPadPlusPlus/releases/latest) ready-to-play in a bundle with Notepad++ v7.8.1 and PythonScript v1.5.2.0 as portable version:
46
-
* Download [`Npp7.8.1_32bit_PyPadPlusPlus1.2.2.zip`](https://github.com/bitagoras/PyPadPlusPlus/releases/download/v1.2.2/Npp7.8.1_32bit_PyPadPlusPlus1.2.2.zip), unzip it into a folder and start `notepad++.exe`.
41
+
PyPadPlusPlus requires Notepad++ and PythonScript. Since the installation is quite cumbersome you can download the [latest release](https://github.com/bitagoras/PyPadPlusPlus/releases/latest) ready-to-play in a bundle with Notepad++ v7.9.5, PythonScript v3.0.8.0 and Python 3.9 as portable version:
42
+
* Download [`Npp7.9.5_32bit_PyPadPlusPlus1.3.0.zip`](https://github.com/bitagoras/PyPadPlusPlus/releases/download/v1.3.0/Npp7.9.5_32bit_PyPadPlusPlus1.3.0.zip), unzip it into a folder and start `notepad++.exe`.
43
+
44
+
This version also includes multi cursor edit known from Sublimetext or VSCode:
45
+
* select next: `<Ctrl> + <D>`
46
+
* select next whole word: `<Shift> + <Ctrl> + <D>`
If you need to install PyPadPlusPlus in another version of Notepad++ you have to go the hard way:
51
56
52
-
1. Install Python Script from [PythonScript releases](https://github.com/bruderstein/PythonScript/releases) or from the plugin manager of Notepad++.
53
-
2. Download the sources or the latest [PyPadPlusPlus release](https://github.com/bitagoras/PyPadPlusPlus/releases) and extract the files into the script folder of PythonScript:
57
+
1. Install Python Script from https://github.com/bruderstein/PythonScript/releases/ or in the plugin manager of Notepad++.
58
+
2. Download the sources or the latest [release](https://github.com/bitagoras/PyPadPlusPlus/releases) of PyPadPlusPlus and extract the files into the script folder of PythonScript:
3.If you want to use the Python installation of your system, open the file `pyPadStart.py` and set the variable `pythonPath` to the path that contains your `pythonw.exe` file.
61
+
3.Open the file `pyPadStart.py` and set `pythonPath` to the path of your pythonw.exe file.
57
62
4. Start Notepad++ and go to the menu "Plugins → Python Script → Configuration..."
58
63
5. Select "Machine Scripts" (or "User Scripts") and add the scripts to Menu items:
59
64
*`pyPadClear.py` clears the console output
@@ -72,4 +77,6 @@ If you need to install PyPadPlusPlus in another version of Notepad++ you have to
72
77
*`codeSnippetsLog.py <Alt> + <S>`
73
78
7. When Notepad++ does not allow you to define a shortcut on `<Shift> + <Enter>`, use `<Shift> + <Alt> + <Enter>` as preliminary shortcut. Then go to "Settings / Shortcut mapper / Scintilla commands" and unset `<Shift> + <Enter>` for `SCI_NEWLINE`. Now open `shortcuts.xml` in the Notepad++ Folder. Check if there is a line `<ScintKey ScintID="2329" menuCmdID="0" Ctrl="no" Alt="no" Shift="no" Key="13" />`. If not try to find it in the `C:\Users\<user name>\AppData\Roaming\Notepad++\` or `C:\Users\<user name>\AppData\Local\Notepad++\` folder when Notepad++ was installed with the installer. Now search the line
0 commit comments