Notepad++
Notepad++ ist ein freier Texteditor für Windows und kompatible Betriebssysteme. Als Zeichensätze werden ASCII und verschiedene Unicode-Kodierungen unterstützt, so können leicht auch fremdsprachige Textdateien verfasst werden. Die Bearbeitung von Quelltext wird besonders unterstützt: Für viele Programmiersprachen werden Syntax und Struktur durch typographische Mittel bzw. Code-Faltung hervorgehoben. Das Projekt basiert auf Scintilla, ist in der Programmiersprache C++ geschrieben und steht unter der GPL-Lizenz.
Notepad++ | |
---|---|
Notepad++ mit SVG-Datei in Windows 7 | |
Basisdaten | |
Entwickler | Don Ho[1] |
Erscheinungsjahr | 25. November 2003 |
Aktuelle Version | 8.3.1[2] (15. Februar 2022) |
Betriebssystem | Microsoft Windows, ReactOS |
Programmiersprache | C++[3], C |
Kategorie | Texteditor |
Lizenz | GNU General Public License, Version 3.0 oder später[4][5], GNU General Public License, Version 2.0 oder später |
deutschsprachig | ja |
notepad-plus-plus.org |
Geschichte
Notepad++ wurde im September 2003 von Don Ho entwickelt, da er mit dem Editor JEXT nicht zufrieden war. Aus diesem Grund begann er in seiner Freizeit mit der Entwicklung von Notepad++, das er in C++ schrieb und das auf der Quellcode-Bearbeitungskomponente Scintilla basiert.[6]
Im November 2003 wurde Notepad++ erstmals auf SourceForge veröffentlicht.[6]
Mit der am 25. Oktober 2008 veröffentlichten Version 5.1 wurde die Software, neben der bereits bestehenden ANSI-Unterstützung, mit einer Unicode-Unterstützung ergänzt. Diese hat jedoch den Nachteil, dass ältere, bereits vorhandene Programmerweiterungen sogenannte Plug-ins teilweise nicht mehr verwendet werden können, da sie noch nicht Unicode-fähig sind. Beim Start der Anwendung werden alle ANSI-kompatiblen Plug-ins deaktiviert und können nicht mehr verwendet werden. Der Programm-Installer enthält nur die Unicode-Version, in der Version ohne Installer ist jedoch auch eine ANSI-Version enthalten. Mit dieser können die nicht für Unicode aktualisierten Plug-ins auch weiterhin verwendet werden. Sie unterstützt jedoch keine Unicode-Plug-ins.[7]
Am 21. September 2009 wurde die Version 5.5 veröffentlicht, welche mit einer verbesserten Suchfunktion sowie einer Textauswahl per Aufziehkasten erweitert wurde. Zudem ist das Laden von Plug-ins nun auch ohne den Neustart des Programms möglich. Darüber hinaus wurden kleinere Verbesserungen und eine Reihe von Fehlerkorrekturen vorgenommen.[8] Des Weiteren wurde bei den Änderungen auch die integrierte Komponente Scintilla von Version 1.78 auf Version 2.01 aktualisiert.[7]
Am Freitag, den 13. Juni 2014 wurde die Version 6.6.6 veröffentlicht.[9] Das Chamäleon im Logo wurde zu diesem Anlass rot eingefärbt, sowie mit kleinen schwarzen Hörnern und einem Teufelsschwanz versehen. Der Blog-Eintrag zur Veröffentlichung der Version 6.6.6 endet mit den Worten „Enjoy your 666 Friday the 13th edition, and do some evil things with it ;)“.
Am 10. Januar 2015 erschien die Version 6.7.4, welche als Je suis Charlie edition bezeichnet wird.[10] Nach Installation schreibt Notepad++ ein politisches Statement mit Bezug auf den Anschlag auf Charlie Hebdo in das Textfenster. Nach Erscheinen dieser Version wurde die Webseite von Notepad++ von Unbekannten verschandelt.[11]
Portabilität und Lokalisierung
Notepad++ ist als portable Version erhältlich. Zudem ist die Benutzeroberfläche in über 80 Sprachversionen verfügbar.
Über ein Plug-in kann eine Rechtschreibprüfung durchgeführt werden. Wörterbücher sind in vielen verschiedenen Sprachen verfügbar.
Unterstützte Sprachen
Notepad++ bietet Syntaxhervorhebung für folgende Programmier- und Auszeichnungssprachen (ohne Plug-ins):
- ActionScript
- Ada
- ASN.1
- ASP
- Assembler
- AutoIt
- AviSynth
- BaanC
- Batch
- BlitzBasic
- C
- C++
- C#
- Caml
- CMake
- COBOL
- CoffeeScript
- Csound
- CSS
- D
- Diff
- Erlang
- ESCRIPT
- Forth
- Fortran
- FreeBASIC
- Gui4Cli
- Haskell
- HTML
- INI-Datei
- Inno Setup
- Intel HEX
- Java
- JavaScript
- JSON
- JSP
- KiXtart
- LaTeX
- Lisp
- Lua
- Makefile
- Matlab
- MMIXAL
- MS-DOS-Style
- Nim
- nnCrontab
- NSIS-Skript
- Objective-C
- OScript
- Pascal
- Perl
- PHP
- PostScript
- PowerShell
- Properties
- PureBasic
- Python
- R
- REBOL
- Registry-Datei
- Ressource-RC-Dateien
- Ruby
- Rust
- Scheme
- Shell
- Smalltalk
- Spice
- SQL
- S-Record
- Swift
- Tcl
- Tektronix Extended HEX
- TeX
- txt2tags
- Verilog
- Visual Basic/VBS
- Visual Prolog
- VHDL
- XML
- YAML
Zusätzlich lassen sich Syntaxdefinitionen für weitere Sprachen über eine grafische Oberfläche einstellen. Dabei ist es möglich Schlüsselwörter, Kommentare und Operatoren selbst festzulegen und in verschiedenen Kategorien unterschiedlich zu formatieren.
Funktionen
Notepad++ stellt eine Schnittstelle für Plug-ins zur Verfügung, über die das Programm um zusätzliche Funktionen erweitert werden kann. Einige der nachfolgend aufgeführten Funktionen sind im Programm integriert, andere liegen dem Installations-Paket als Plug-ins bei.
- Syntax-Hervorhebung
- Unterstützte Sprachen werden anhand der Dateinamenserweiterung erkannt oder die verwendete Sprache kann manuell festgelegt werden. Des Weiteren erkennt Notepad++ in das Dokument eingebettete Sprachen, wie z. B. JavaScript in einem HTML-Dokument und stellt sie entsprechend dar. Schlüsselwörter der Sprachen werden hervorgehoben.
- Autovervollständigung
- Mit der Tastenkombination Strg+Leertaste, optional auch automatisch, kann eine Funktion zur automatischen Text-Vervollständigung aufgerufen werden.
- Automatische Einrückung
- Einrückung kann entsprechend der Syntax oder entsprechend der vorhergehenden Zeile eingefügt werden.
- Multi-Dokument und Multi-Ansicht
- Mehrere Dokumente können gleichzeitig in Tabs geöffnet oder zum Vergleich von zwei Dateien nebeneinander dargestellt werden.
- Suchen und Ersetzen
- Die Suchfunktion unterstützt verschiedene Modi
- einen Normal-Modus für einfache Suchen
- einen erweiterten Modus, in dem auch Steuerzeichen inklusive Zeilenumbrüche verarbeitet werden können, sowie
- einen Modus für (Perl-kompatible) reguläre Ausdrücke zur Suche von Mustern (ab Version 6.0)
- Suchen in Dateien
- Die Suchfunktion unterstützt verschiedene Modi
- Drag-and-Drop-Unterstützung
- Dateistatuserkennung
- Wenn eine in Notepad++ geöffnete Datei von einem anderen Programm verändert oder gelöscht wurde, wird man über diese Veränderung informiert und kann die Datei dann neu laden oder entfernen.
- Dokumenten-Zoom
- Angezeigte Dokumente lassen sich mit Strg+Mausrad in mehreren Stufen vergrößern und verkleinern.
- Unterstützung für verschiedene Landessprachen
- Das Programm liegt in Übersetzungen für über 45 Sprachen vor.
- Lesezeichen
- Durch einen Klick auf den Dokumentenrand lassen sich Lesezeichen setzen, die mit F2 angesprungen werden können.
- Klammerhervorhebung
- Befindet sich der Cursor auf einer Klammer, wird die dazugehörige Klammer hervorgehoben dargestellt. Mit Strg+B kann der Cursor zu dieser entsprechenden Klammer bewegt werden.
- Stil-Konfigurator
- Notepad++ beinhaltet einen „Stil-Konfigurator“, mit dem man für jede unterstützte Sprache und für jedes Syntaxelement einzeln die Vorder- und Hintergrundfarbe, die Schriftart, die Schriftgröße und den Schriftstil (fett oder kursiv) einstellen kann. Sollten ein oder mehrere Schlüsselwörter nicht erkannt werden, kann man diese auch über den „Stil-Konfigurator“ hinzufügen.
- Makro-Aufzeichnung und Wiedergabe
- Code-Faltung
- Logisch zusammengehörende Quelltextabschnitte können „ein-“ und „ausgeklappt“ werden, um sie unsichtbar beziehungsweise sichtbar zu machen, je nachdem ob sie gerade benötigt werden oder nicht.
- Vollbildmodus
- Mit F11 kann man das Fenster in den Vollbildmodus schalten. Mit F12 kann danach zusätzlich das Dokument selbst maximiert werden (Statusleiste und Registerkarten werden ausgeblendet).
- Rechtschreibprüfung
- Wenn Aspell installiert ist, kann in Dokumenten eine Rechtschreibprüfung durchgeführt werden.
- Vordefinierte Textbearbeitungsfunktionen
- Das Plug-in TextFX stellt eine Reihe sehr nützlicher Bearbeitungsfunktionen zur Verfügung.
- Compiler-Integration
- Mit Hilfe des Plug-ins NppExec lassen sich externe Programme direkt aus Notepad++ heraus aufrufen und deren Ausgabe gefiltert anzeigen.
- Mehrzeiliges Bearbeiten
- Durch Drücken von Strg beim Klicken kann der Cursor an mehreren Position des Dokuments gleichzeitig platziert werden und dort dieselben Bearbeitungen ausführen. Durch Drücken von Alt kann über mehrere Zeilen hinweg ein rechteckiger Textblock ausgewählt werden.
Funktionen durch zusätzliche Plug-ins (Auswahl)
- Funktionsliste
Anzeige einer Liste der definierten Funktionen in einer Quelldatei. - Symbol-Datenbank
Mithilfe von Plug-ins wie tagLEET lassen sich Ctags einbinden. Das ermöglicht es für Quelldateien einen Index der verwendeten Bezeichner zu erstellen und diese zu referenzieren.[12] - Hex-Editor[13]
Binärdateien können angezeigt und verändert werden.
Easter Eggs
Wenn man den Info-Dialog öffnet bzw. F1 drückt, während man einen bestimmten Text markiert hat, dann erscheint daneben ein entsprechendes Zitat. Auslöser für dieses Easter Egg sind beispielsweise Bill Gates, Steve Jobs, Linus Torvalds, Brian W. Kernighan, Albert Einstein, James Bond, Barack Obama, Space Invaders und Darth Vader. Bei Auswahl des Textes „random“ erscheint ein zufälliges Zitat.
Notepad++ (x4) | Richard Stallman | Martin Golding | L. Peter Deutsch | Seymour Cray | Brian Kernighan | Alan Kay | Bill Gates | Christopher Thompson | Vidiu Platon | Edward V Berard | pixadel | Oktal | Bjarne Stroustrup | Mosher's Law of Software Engineering | Bob Gray | Roberto Waltman | Gavin Russell Baker | Linus Torvalds | Cult of vi | Church of Emacs | Steve Jobs | brotips #1001 | Robin Williams | Darth Vader (x2) | Doug Linder | Jean-Claude van Damme | Michael Feldman | Don Ho (x4) | A developer | Elon Musk | OOP | Internet #1 | Internet #404 | Mary Oliver | Floor | Simon Amstell | Albert Einstein | Terry Pratchett | Stewart Brand | Sam Redwine | Jan L. A. van de Snepscheut | Jessica Gaston | Barack Obama | xkcd.com | Gandhi | R. D. Laing | Hustle Man | Mark Twain | Friedrich Nietzsche | Dhalsim | Elie Wiesel | Dennis Ritchie | Chewbacca | Alexandria Ocasio-Cortez | Space Invaders | #JeSuisCharlie
Anonymous #1–#164 (außer #113)Aktivismus
Der Gründer von Notepad++ unterstützt die Protestierenden in Hongkong, sowie die Uiguren, die wegen ihrer ethnischen Herkunft in chinesische Lager gesteckt werden. Notepad++ wurde daraufhin in China verbannt.[15]
Weblinks
- Offizielle Website (englisch)
- Notepad++ auf GitHub (englisch)
Einzelnachweise
- Don Ho. In: GitHub. Abgerufen am 9. März 2017 (englisch).
- Notepad++ 8.3.1 - Boycott Beijing 2022.
- The notepad-plus Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 14. Juli 2018).
- LICENSE. (abgerufen am 15. Februar 2021).
- Upgrade Notepad++ License.
- Behind The App: The Story Of Notepad++. 18. Juni 2015, abgerufen am 24. Mai 2019 (englisch).
- Neuauflage von Notepad++ – Artikel bei heise online, vom 22. September 2009.
- Notepad++ 5.5 bringt diskontinuierliche Textauswahl – Artikel bei Golem.de, vom 22. September 2009.
- Notepad++ 666 Friday the 13th edition – Veröffentlichungsmitteilung auf der Notepad++ Website.
- Notepad++ 6.7.4 Je suis Charlie edition – Veröffentlichungsmitteilung auf der Notepad++ Website.
- l+f: Notepad++ ist Charlie und wird deswegen gehackt – Artikel bei Heise online, vom 13. Januar 2015.
- TagLeet auf SourceForge, abgerufen am 1. April 2019.
- Hexeditor Plugin. In: github.com.
- Code-Ausschnitt der Easter-Eggs
- Eva-Maria Weiß: Notepad++ in China verbannt – Editor unterstützt Hongkong-Proteste und Uiguren. In: heise online. 18. August 2020, abgerufen am 18. August 2020.