Interne Verknüpfungen

German support forum

Moderators: white, Hacker, Stefan2

Hansl
Junior Member
Junior Member
Posts: 65
Joined: 2006-02-09, 21:15 UTC

Post by *Hansl »

Da muss ich diesen alten Thread mal wieder aufwärmen:

Auch ich fände es für Sonderfälle extrem nützlich, wenn TC bei den internen Verknüpfungen außer %1 für den Namen mit Pfad auch noch ein %N für den nackten Dateinamen ohne Pfad kennen würde. Bittebitte...

Grüße, Hans
J.Bl
Member
Member
Posts: 116
Joined: 2005-01-23, 16:29 UTC

Post by *J.Bl »

Mein Tool (Link siehe einige Antworten weiter oben) leistet das doch.

J.Bl
Hansl
Junior Member
Junior Member
Posts: 65
Joined: 2006-02-09, 21:15 UTC

Post by *Hansl »

Hallo J.Bl,

ja, dein Tool hatte ich gesehen und als etwas umständlichen Workaround auch erwogen. Aber bei mir ist das etwas verwickelter:

1. TC läuft hier in Wine unter Linux. Das geht nicht perfekt, aber besser, als man fürchten würde. Aber DOS-Batches mit DOS-Parametern nicht so recht... Überhaupt ist Wine noch ein recht bewegliches Ziel.

In TCs Internen Verknüpfungen kann man durchaus direkt Linux-Programme aufrufen, aber die können mit dem Windows-Pfad natürlich nix anfangen. Bräuchten meist auch nur den Dateinamen.
Gäbe es ein %F, dann wäre ich mit einer Internen Verknüpfung wie zB
/usr/bin/libreoffice "%F" schon fertig.

Es gibt zwar in Wine ein Tool winepath, das wandelt den Windows-Pfad um in einen gültigen Linux-Pfad, aber mit dem lästigen Vorspann /home/username/.wine/dosdevices/s:/einPfad/eineDatei.ext
Das kann ich nicht gebrauchen, denn:

2. Die mich interessierenden Pfade sind nicht lokal, sondern zu einem Samba-Server. Bei anderen Kollegen mit Windows ist der als Netzlaufwerk S: eingebunden. Sehr viele Dateien enthalten nun Hyperlinks auf file:///S:/einPfad/eineDatei.ext . Würde ich nun eine Datei unter dem obigen winepath editieren, wären alle Links für meine Kollegen kaputt.

3. Also muss ich den Server in meinem Linux-System als /S: mounten und die Dateien in diesem Pfad editieren, dann stimmen die Hyperlinks sowohl unter Linux als auch Windows.

4. Also muss ich den Windowspfad S:\einPfad\eineDatei.ext (den TC sieht) beim Programmstart umformen zu /S:/einPfad/eineDatei.ext oder in den nackten Namen, je nach Programm.

Mein Basteldrumrum sieht nun so aus:

ein Shellscript /usr/local/bin/runlinuxapp enthaltend:

Code: Select all

#!/bin/bash 
"$1" `echo "$2" | sed -f /usr/local/bin/sedcmd_wp2f` 
und eine sed-Kommandodatei /usr/local/bin/sedcmd_wp2f enthaltend:

Code: Select all

s/[A-Z]:\\.*\\// 
Das strippt mir einfach den Pfad vom Namen. Eine alternative sed-Kommandodatei /usr/local/bin/sedcmd_wp2lp enthaltend:

Code: Select all

s%\\%\/%g
s%^%/% 
wandelt den Pfad wie oben beschrieben um. (das sed-Kommando muss in eine Datei ausgelagert werden, weils inline mit den ganzen Quote-Zeichen schief geht)

Nun endlich funktioniert mit diesen drei Zeilen eine Interne Verknüpfung wie zB für *.odt
/usr/local/bin/runlinuxapp "libreoffice" "%1"
oder für *.pdf
/usr/local/bin/runlinuxapp "evince" "%1"
mit beliebigen Linux-Programmen problemlos.


Liebe Grüße, Hans
User avatar
blacky
Senior Member
Senior Member
Posts: 312
Joined: 2003-02-07, 16:58 UTC
Location: was das/whot's dath ?

Re: Interne Verknüpfungen

Post by *blacky »

kleine dezente Frage, wenn ich das hier hab als internes commando :

usercmd.ini

Code: Select all


[em_innounp]
cmd=%Commander_Path%\proggs\innounp\innounp.exe
Button=%Commander_Path%\proggs\innounp\innounp.ico
Param=? %S -x -d%T
menu="InnoUnp"

[em_innounpsub]
cmd=%Commander_Path%\proggs\innounp\innounp.exe
Button=%Commander_Path%\proggs\innounp\innounp.ico
Param=? %S -x -d%P%O
menu="InnoUnp"

[em_innounpepl]
cmd=%Commander_Path%\proggs\innounp\ISUnp.exe
Button=%Commander_Path%\proggs\innounp\ISUnp.exe
Param=? %S 
menu="InnoUnp Explorer"

und ich möcht "em_innounpsub" als interne Verknüpfung benutzen,
das die Exedatei-Name, als Name-Directory erstellt und dort rein extrahiert,
funktioniert auch im UNC-Path über SMB (hab Fedora-Samba)

Wie mach ich das ?
die Antwort könnte man auch gleich in's wiki aufnehmen,
nehm ich wahrscheinlich auch gleich auf bei mir unter TC Gebrauchsanweisung..
(Interne Commandos (em_*/usercmd.ini) als interne Verknüpfung benutzen)

könnte mir da vielleicht jemand helfen ?

Danke :)

liebe Grüße
Blacky

edit: p.s.: hab ein Icon gebastelt für Innounp, iss auf sourceforge unter diskussions
https://sourceforge.net/p/innounp/discussion/353235/thread/4d86c8fab6/
Meine Blackysgate.de/net
Ma' Personal licence : already one. Hab auch eine
Mein Computer : Einer/once ??? bahh, Rz/Data Centre !
Kitchen, Liv.room, TV, Schlafz.. Sch...
BS/OS: Win3.1/7, Fedora a. other, Reactos
Post Reply