Alternativer Editor funktioniert nicht bei einer Remote Verbindung (SFTP,WebDAV)

German support forum

Moderators: Hacker, Stefan2, white

Post Reply
User avatar
Unused
Member
Member
Posts: 122
Joined: 2005-01-19, 20:26 UTC

Alternativer Editor funktioniert nicht bei einer Remote Verbindung (SFTP,WebDAV)

Post by *Unused »

Hallo auch. Ich würde gerne 2 verschiedene externe Editoren für die Taste F4 verwenden. Zum einen einen Standard Editor der immer verwendet werden soll, wenn ich nur einfach die F4 Taste drücke. Zum anderen einen alternativen Editor, welcher in seltenen Fällen verwendet werden soll. Dieser soll nur dann mit der Datei unter dem Cursor/markiert aufgerufen werden, wenn ich eine Zusatztaste wie Shift+F4, STRG+F4 oder Alt+F4 drücke. Ich habe mir aktuell so beholfen, das ich in der wincmd.ini folgendes stehen habe:

Code: Select all

[Shortcuts]
S+F4=em_vcode
und in der usersmd.ini:

Code: Select all

[em_vcode]
cmd=c:\Program Files\Microsoft VS Code\Code.exe
param=%P%N
Das funktioniert aber nur bedingt. Sprich nur auf den lokalen Dateisystemen. Bei einer Remote Verbindung mittels SFTP oder WebDAV öffnet sich in Code.exe lediglich eine leere Datei mit dem gewählten Dateinamen. Ich nehme an, ich habe die falschen Parameter eingetragen aber wüsste jetzt nicht die richtigen. Achja, beim Speichern einer Datei, soll diese natürlich hochgeladen werden, nicht erst beim Schließen des Editors. Ich nehme aber das verhält sich entsprechend der normalen F4 Konfiguration, wo ich dies bereits aktiviert habe.
JOUBE
Power Member
Power Member
Posts: 1664
Joined: 2004-07-08, 08:58 UTC

Re: Alternativer Editor funktioniert nicht bei einer Remote Verbindung (SFTP,WebDAV)

Post by *JOUBE »

Schon mal in die Statuszeile oder in die Titelleiste (je nach Editor) geguckt, wenn man mit F4 eine Remote-Datei (via SFTP-Plugin) bearbeitet? Man sieht dann, dass die Datei nicht direkt bearbeitet werden kann, sondern vor dem Bearbeiten mit F4 heruntergeladen wird, damit der Editor Zugriff hat, der ja nur lokal arbeiten kann (Diese heruntegeladene temporäre Datei kann auch vom Tc auf Veränderungen überwacht und ggf auch bereits wieder hochgeladen werden, bevor der Editor beendet wird.) Also muss nun für einen zweiten Editor nur zusätzlich(!) zu dem F4-Editor der richtige Pfad angegeben werden. Die (temporär zur Bearbeitung heruntergeladene nun lokale) Datei wird im Temp-Verzeichnis abgelegt. Für den zweiten Editor muss nur der richtige temporäre Pfad davorgefummelt werden, was am besten in einer Batch geschieht (wg der Bachslashes im Parameter %P). Also vor %P%N kommt noch der temporäre Pfad aus dem guten alten DOS-Environment (minus der wegorganisierten Backslashes) und ein kleines Stückchen _tcx\N\ (mit N = 0,1,2,3,4 ). Das Stückchen (das N) muss man mit einer kleinen Suche in dem Batch richtig herstellen. Dürfte alles nicht so schwer sein... (der F4-Editor muss lediglich während der ganzen Zeit um Hintergrund offen bleiben (ggf runter in die Taskleiste geklappt) und nach Editor 2 geschlossen werden, dann kann man alles mögliche mit der Datei anstellen...)

Code: Select all

set a=%1
:ggf N ermitteln 
set N=0
start "" "EditorPfadName" "%TEMP%\_tcx\%N%\%a:~4%
:fuer Tests "echo start...." und "pause" anfuegen
JO"vielleicht gibt es das schon als fertige Variable alla N oder P? Ich weiss es nicht. um Taste F4 kommt man aber im Moment nicht herum, weshalb mir das zu umständlich ist und ich die mit einem anderen Editor zu bearbetende Datei einfach herunterlade an einen definierten immer gleichen Ort, dort bearbete und wieder hochlade..."UBE
User avatar
Unused
Member
Member
Posts: 122
Joined: 2005-01-19, 20:26 UTC

Re: Alternativer Editor funktioniert nicht bei einer Remote Verbindung (SFTP,WebDAV)

Post by *Unused »

Das klingt echt kompliziert...
JOUBE
Power Member
Power Member
Posts: 1664
Joined: 2004-07-08, 08:58 UTC

Re: Alternativer Editor funktioniert nicht bei einer Remote Verbindung (SFTP,WebDAV)

Post by *JOUBE »

Unused wrote: 2020-08-05, 08:50 UTCDas klingt echt kompliziert...
;-) Ist es aber überhaupt nicht...

Ersetzt man in [em_vcode] den direkten Aufruf des Editos2 durch einen Aufruf eines Batch mit dem Inhalt aus meinem Beispiel (Editor2 fügt man an der richtigen Stelle im Batch ein), dann sollte das schon klappen. Auf dem Button in der Buttonleiste ruft man dann zuerst cm_edit und dann (evetuell mit einem kurzen Delay am Anfang des Batches) em_vcode auf

JO"die Lösung ("%TEMP%\_tcx\%N%\%a:~4%) habe ich doch hingeschrieben. Wer sich mit VSC auskennt, sollte den Rest doch hinbekommen"UBE
Post Reply