Schalter Dateinamen automatisch in Textdokument übernehmen

Aktuelle Version: 12.6 (09.06.2017)
Alles zum Thema Directory Opus
Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 22. Jan 2012 16:21

Hallo,
ich erstelle sehr viele kleinere Textdateien.
Zum Beispiel habe ich eine umfangreiche Zitatesammlung. Diese besteht aus einzelnen txt-Dateien. Diese txt-dateien erstelle ich aus dem Lister heraus. Dafür habe ich extra einen Schalter der mir nach Eintragen des Dateinamens den Editor öffnet. Dann schreibe ich das Zitat und das txt-Dokument ist dann nach speichern und schließen in dem Lister gespeichert. Soweit so gut. Ich würde das gerne noch vereinfachen. Die Dateinamen sind in diesem Fall immer die ersten 4 Wörter des Zitates. Ich muss also nach Eintragen des Dateinamens diese 4 Wörter nochmals in das Textdokument schreiben oder aber den Dateinamen markieren, kopieren und einfügen. Nun zur Frage: Ist es möglich einen Schalter zu machen ähnlich dem bereits vorhandenen, nur das nach Eintragen des Dateinamens und drücken der Entertaste dieser Dateiname dann automatisch in das Textdokument übernommen wird so dass ich nur noch weiterschreiben muss?
Vielen Dank und Gruß

Jochen

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 23. Jan 2012 08:57

War leichter als ich zunächst dachte. Statt Notepad kannst du natürlich auch einen anderen Editor starten.

Code: Alles auswählen

@set name={dlgstring|Text eingeben:}
Clipboard SET {$name}
Clipboard PASTE AS "{$name}.txt"
notepad {sourcepath}{$name}.txt 

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 23. Jan 2012 09:28

Super, vielen Dank,
das ist fast perfekt. Ich verwende Metapad als editor und habe das entsprechend geändert.
Das einzige ist dass nach dem öffnen des editors der Cursor vor dem ersten Wort steht. Man kann also nich sofort weiterschreiben sondern muss erst auf Taste Ende, dann Leertaste drücken um an der richtigen Stelle weiterschreiben zu können.

Mein Code sieht so aus:

Code: Alles auswählen

    @set name={dlgstring|Text eingeben:}
    Clipboard SET {$name}
    Clipboard PASTE AS "{$name}.txt"
    C:\Users\Jochen\Documents\A-Z\Metapad\metapad.exe {sourcepath}{$name}.txt 
Gruß

Jochen

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 23. Jan 2012 10:50

Das einzige ist dass nach dem öffnen des editors der Cursor vor dem ersten Wort steht. Man kann also nich sofort weiterschreiben sondern muss erst auf Taste Ende, dann Leertaste drücken um an der richtigen Stelle weiterschreiben zu können.
Das kriegst du mit nircmd hin. Besorge dir nircmd.exe (64bit) von hier:
http://www.nirsoft.net/utils/nircmd-x64.zip
Erstelle dann eine Textdatei mit folgendem Inhalt:

Code: Alles auswählen

wait 300
sendkeypress end
sendkeypress spc
Benenne die Datei dann um nach z.B. "test.ncl" und speichere sie am gleichen Ort wie die nircmd.exe. Die Zeile "wait 300" muss eventuell angepaßt werden wenn der Befehl nicht funktioniert. Die Zahl definiert die Wartezeit bis dein Editor die Datei geöffnet hat und die keystrokes gesendet werden können.

Der Schalterbefehl lautet dann so (Pfad zur nircmd.exe muss angepaßt werden):

Code: Alles auswählen

@set name={dlgstring|Text eingeben:}
Clipboard SET {$name}
Clipboard PASTE AS "{$name}.txt"
@async:notepad {sourcepath}{$name}.txt 
[Pfad zur nircmd.exe] script test.ncl

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 23. Jan 2012 12:41

Klappt irgendwie nicht. Siehe Screenshot.
Textdatei wird zwar angelegt aber Cursor ist immer noch vorne. Zusätzlich diese Fehlermeldung.
screen.jpg

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 23. Jan 2012 13:57

Bei mir sind *.ncl-Dateien direkt mit nircmd.exe verknüpft, so daß ich sie per Doppelklick ausführen kann. In meinem Schaltercode steht also statt "[Pfad zu nircmd.exe] script test.ncl" nur "test.ncl".
Ich habe den Code jetzt nochmal mit Metapad so getestet wie ich ihn gepostet habe und festgestellt daß der Dateiname des ncl-Scripts in Anführungszeichen stehen und mit vollständigem Pfad angegeben sein muss.
Die Fehlermeldung muss aber eine andere Ursache haben. Sieht aus als könnte DOpus mit der ganzen Zeile nichts anfangen obwohl Metapad die Datei öffnet? Überprüfe den Schaltercode z.B. auf überflüssige Leerzeichen. Beim Kopieren aus der Codebox im Forum mit Firefox bekomme ich beim Einfügen in den Befehlseditor manchmal 4 Leerzeichen am Anfang jeder Zeile. Dann funktioniert der Code oft nicht.
Sollte alles funktionieren, aber der Cursor immer noch am Anfang stehen kann es sein, daß dein System länger braucht um die Datei zu öffnen. Dann musst du im ncl-Script die Wartezeit von 300 auf z.B. 600ms erhöhen.
@async ist übrigens notwendig, weil DOpus den folgenden Nircmd-Befehl sonst erst ausführt, wenn Metapad geschlossen wird.
Das hier funktioniert bei mir einwandfrei auch wenn die Pfade Leerzeichen enthalten:

Code: Alles auswählen

@set name={dlgstring|Text eingeben:}
Clipboard SET {$name}
Clipboard PASTE AS "{$name}.txt"
@async:C:\Desktop\metapad 36\metapad.exe "{sourcepath}{$name}.txt"
"C:\Desktop\Test\nircmd.exe" script "C:\Desktop\Test\test.ncl"

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 23. Jan 2012 15:29

Klappt jetzt FAST.
Keine Fehlermeldung mehr, Metapad wird geöffnet.
Cursor aber leider immer noch am Anfang, trotz 600, 900, 1200 ms.
Es waren tatsächlich Leerzeichen vorhanden.
Hier mal ein Screenshot von Nirsoft, alles so ok?
Screen_.jpg

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 23. Jan 2012 15:48

Deine ncl-Datei ist laut deinem Screenshot keine ncl- sondern eine txt-Datei. :wink:

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 23. Jan 2012 16:53

:mrgreen:
Sorry, das war natürlich klasse!
Funktioniert aber trotzdem nicht :?:
Noch ne Idee?
sreen_2.jpg
sreen_2.jpg (17.62 KiB) 1777 mal betrachtet

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 23. Jan 2012 17:50

...Jetzt hat die Datei eine doppelte Dateiendung (test.ncl.ncl) die nicht im Buttoncode steht...
Ich fände es auch verwirrend wenn in meiner Namensspalte nur Kurznamen ohne Dateiendung stehen. Wenn schon, dann muß für mich die Erweiterungs-Spalte direkt dahinter stehen, damit ich solche Sachen sicher merke. :mrgreen:

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 23. Jan 2012 18:15

Danke für deine Geduld :wink:
Ich hatte das auch schon bemerkt und bereits geändert. Der Screenshot war falsch.
Ich hab jetzt nochmal einen gemacht und den vom code.
Irgendwie blicke es ich scheinbar nicht richtig.
Tut mir leid.
sreen_3.jpg
Dateianhänge
sreen_4.jpg

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 23. Jan 2012 18:47

Ich habe den Code jetzt nochmal mit Metapad so getestet wie ich ihn gepostet habe und festgestellt daß der Dateiname des ncl-Scripts in Anführungszeichen stehen und mit vollständigem Pfad angegeben sein muss.
Also so:

Code: Alles auswählen

@set name={dlgstring|Text eingeben:}
Clipboard SET {$name}
Clipboard PASTE AS "{$name}.txt"
@async:C:\Users\Jochen\Documents\A-Z\Metapad\metapad.exe "{sourcepath}{$name}.txt"
"C:\Users\Jochen\Documents\A-Z\Nirsoft\nircmd.exe" script "C:\Users\Jochen\Documents\A-Z\Nirsoft\test.ncl"
Danke für deine Geduld
Kein Problem! Ich liege gerade mit Hexenschuß brach und habe Spaß an leichter Unterhaltung. :lol:

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 24. Jan 2012 00:36

Wer lesen kann ist echt im Vorteil.
Funktioniert einwandfrei. Vielen Dank für deine Hilfe.
Was trinkst du? :D

Benutzeravatar
Kundal
Moderator
Beiträge: 1337
Registriert: 20. Apr 2010 21:26
Betriebssystem: Win7 & Win 10 Pro 64 bit
Produkt: DOpus 12 x64 - Letzte Betaversion
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Kundal » 24. Jan 2012 00:51

Schön, daß es endlich klappt mit deinem Button. Was hast du getrunken? :lol:
Was trinkst du?

:D Im Moment am liebsten Schwarzbier oder Hefeweizen aber mein Hexenschuß hat mich am Einkaufen gehindert...also Selter. :(

Jochen
Beiträge: 173
Registriert: 19. Feb 2008 14:17
Betriebssystem: Windows 7 Home 64 bit
Produkt: DOpus 10.5
Version DOpus: Pro

Re: Schalter Dateinamen automatisch in Textdokument übernehmen

Beitrag von Jochen » 25. Jan 2012 10:03

Könnte man den Schalter noch erweitern bzw. einen neuen anlegen der noch eine weitere Zusatzfunktion hat?
Nämlich:
Bei der Anlage des Textdokumentes wird wie es oben ja bereits funktioniert der Dateiname automatisch übernommen, allerdings soll zusätzlich an erster Stelle der Dateiname des Ordners in dem das Textdokument liegt eingefügt werden, d.h.
Textdokument wird mit einem Schalter angelegt, Dateiname wird eingetragen, Textdokument öffnet sich und bereits eingefügt ist in der ersten Zeile der Dateiname des Ordners, dann eine Leerzeile, dann der Dateiname des Textdokumentes und der Cursor hinter dem letzen Wort mit Leerzeichen so dass man direkt weiterschreiben kann.
Sollte so etwas funktionieren verneige ich mich hier dreimal vor dem Schreibtisch :)

Danke

Jochen

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste