Ich möchte, dass Notepad ++ im Edit with Notepad++
Kontextmenü des Explorers mit Registerkarten versehen wird (wie dies standardmäßig der Fall ist) , aber in einem neuen Fenster ohne Registerkarten (ähnlich wie Notepad / Notepad2) geöffnet wird, wenn ich nur Open
bestimmte Dateierweiterungen verwende. Wenn dies in einem anderen Kontextmenü als möglich Open
wäre, wäre dies auch gut.
Notepad2 ist gut, aber ich würde gerne die genaue Funktionalität von Notepad ++ für Fenster ohne Tabulator sehen (wie es alle Instanzen des ausgewählten Wortes, Tastenkombinationen usw. hervorhebt). Durch Hinzufügen von asNotepad.xml zum Ordner Notepad ++ wird es jedes Mal in einem neuen Fenster geöffnet, aber ich möchte in der Lage sein, Fenster mit Registerkarten gleichzeitig zu öffnen.
Mit "C:\Program Files (x86)\Notepad++\notepad++.exe" -multiInst -notabbar -nosession <text file>
in cmd (das leicht geändert werden kann, um es in ein Kontextmenü einzufügen oder möglicherweise mit "Öffnen" zu arbeiten) wird Notepad ++ in einem neuen Fenster ohne Tab-Leiste geöffnet. Das scheint auf den ersten Blick gut zu sein, aber wenn dieses Fenster noch geöffnet ist, Edit with Notepad++
wird es in diesem Fenster ohne Registerkarte geöffnet, wenn Sie eine beliebige Datei verwenden.
Move to New Instance
Option immer dann verwenden, wenn sie in der Registerkartenansicht geöffnet wird.notepad++.exe -multiInst -notabbar -nosession <text file>
geöffnet. Wenn ich dann eine andere Datei mit öffneEdit with Notepad++
, wird sie im selben Fenster geöffnet. Ich hoffe, es ist offensichtlich, dass es nicht ideal ist, zwei Dateien im selben Fenster ohne Tab-Leiste zu öffnen! Ich hatte das gleiche Ergebnis beim Versuch mit mehreren Versionen von Notepad ++.Antworten:
Es scheint keine triviale Lösung zu geben, daher habe ich 2 Kopien von Notepad ++ verwendet:
Ohne die Verbesserungen an der unbenutzten Version von Notepad ++ werden Dateien in der erwarteten Version von Notepad ++ nicht immer geöffnet. Es tut mir leid, wenn das Bearbeiten von Quelldateien nicht für Superuser geeignet ist, aber ich hoffe, dass dies für jemanden nützlich ist.
Kompilieren der unbenutzten Kopie
In der Readme-Datei zum Quellcode wird das Kompilieren in Visual Studio 2005 empfohlen, in Visual C ++ 2010 Express (kostenlos von Microsoft - http://www.microsoft.com/visualstudio/eng/downloads#d-2010-express ).
Öffnen Sie einfach npp.6.3.src \ PowerEditor \ visual.net \ notepadPlus.vcproj (und konvertieren Sie das Projekt, wenn Sie dazu aufgefordert werden) und erstellen Sie "Unicode Release". Sie können jetzt testen, ob es richtig erstellt wurde:
Dadurch wird notepad ++. Exe in PowerEditor \ bin abgelegt, aber Sie benötigen eine Kopie von SciLexer.dll im selben Verzeichnis, bevor es ausgeführt wird. Dies ist im Lieferumfang von Notepad ++ enthalten. Laden Sie es einfach von der Website herunter. Erstellen Sie außerdem eine leere Textdatei "asNotepad.xml" im selben Verzeichnis, wodurch die Tabulatur aufgehoben und Dateien in neuen Fenstern geöffnet werden.
Optimierungen
Ändern Sie in winmain.cpp in Zeile 214
"nppInstance"
zu"nppInstance2"
oder ähnlich. Mit dieser Änderung wird die Registerkartenkopie von Notepad ++ nicht denken, dass ein Notepad ++ - Fenster bereits geöffnet ist, wenn Sie nur Fenster ohne Registerkarten geöffnet haben.Ändern Sie in Notepad_plus_Window.cpp in Zeile 32
"Notepad++"
zu"Notepad++2"
oder ähnlich. Dies wird in winmain.cpp in Zeile 287 verwendet. Mit dieser Änderung enthält die Version mit Registerkarten keine Fenster ohne Registerkarten, wenn nach derzeit geöffneten Fenstern gesucht wird, in denen die Datei geöffnet werden soll.Erstellen Sie nun erneut und verschieben Sie den Ordner PowerEditor \ bin an eine beliebige Stelle. Wenn Sie möchten, dass die Kopie ohne Tabulatoren beim Öffnen bestimmter Dateierweiterungen (z. B. TXT) geöffnet wird, musste ich in Windows 7 "notepad ++. Exe" in "notepad ++ 2.exe" umbenennen, da sie sonst geöffnet wird die installierte (tabbed) Kopie.
Bearbeiten:
Wenn Sie aus dem Quellcode kompiliert haben und das Plugins-Menü verwenden möchten, müssen Sie auch DLLs aus einer anderen Kopie von Notepad ++ in den Plugins-Ordner kopieren.
quelle
Eine Lösung wäre die Verwendung der Funktion "Senden an" in Windows.
Fügen Sie eine Verknüpfung zu Notepad ++ in den
%APPDATA%\Microsoft\Windows\SendTo
Ordner ein(Dies ist normalerweise in
C:\Users\<username>\Appdata\Roaming\Microsoft\Windows\SendTo
)Klicken Sie mit der rechten Maustaste auf die Verknüpfung, wählen Sie Eigenschaften aus und wechseln Sie zur Registerkarte Verknüpfung.
Verwenden Sie
"C:\Program Files (x86)\Notepad++\notepad++.exe" -multiInst -notabbar -nosession
im Feld Ziel.Klicken Sie nun mit der rechten Maustaste auf eine Datei und Senden an -> Editor ++ öffnet die Datei in Editor ++ ohne Tabulator.
Da das
-notabbar
Flag Notepad ++ derzeit zu zwingen scheint, seine Einstellungen zu speichern, sollten Sie in SendTo zwei Verknüpfungen einrichten:Ein Hinweis auf die standardmäßig installierte Version von Notepad ++ mit dem Namen "Notepad ++ Tabbed" (mit den Flags
-multiInst -nosession
am Ende des Zielfelds)Einer (mit
-multiInst -nosession -notabbar
angefügtem Zielfeld) zeigt auf die komprimierte Version des Programms mit dem Namen "Notepad ++ Untabbed".Solange beide Verknüpfungen mit dem
-multiInst
Flag versehen sind, können sie gleichzeitig ausgeführt werden und Sie haben die VOLLSTÄNDIGE Kontrolle darüber, welche Version welches Dokument öffnet.quelle
-multiInst
geöffnet wird, werden die Dateien jedes Mal in einem neuen Fenster und nicht in einer neuen Registerkarte geöffnet.