Need script for collect item/s path/s (#101), to text file
-
Dario
- Posts: 45
- Joined: 20 Aug 2011 17:06
Need script for collect item/s path/s (#101), to text file
Every new added path/s, should be below existing paths.
Thanks everyone for the help
Thanks everyone for the help
-
Stefan
- Posts: 1360
- Joined: 18 Nov 2008 21:47
- Location: Europe
Re: Need script for collect item/s path/s (#101), to text fi
Please describe step-by-step what you want to do...
-
Dario
- Posts: 45
- Joined: 20 Aug 2011 17:06
Re: Need script for collect item/s path/s (#101), to text fi
I have one text file (ItemsPaths.text), and from time to time, I need to add some selected files/folders paths to this text file. I do it manually. Select files/folders, press Ctrl+P, open text file, and paste new paths, below existed paths. One line, one path. I'd like to do automatic, with script, if it possible.
thanks
thanks
-
Marco
- Posts: 2354
- Joined: 27 Jun 2011 15:20
Re: Need script for collect item/s path/s (#101), to text fi
First of all select the desired files, then run
Code: Select all
#101;
writefile("PATHTOYOURTEXTFILE",<crlf>.<clipboard>,"a","t");Tag Backup - SimpleUpdater - XYplorer Messenger - The Unofficial XYplorer Archive - Everything in XYplorer
Don sees all [cit. from viewtopic.php?p=124094#p124094]
Don sees all [cit. from viewtopic.php?p=124094#p124094]
-
Dario
- Posts: 45
- Joined: 20 Aug 2011 17:06
Re: Need script for collect item/s path/s (#101), to text fi
Thank you very much Marco.
Script work as I want, and one more thing if it possible. When I use script, I've got somtimes empty line between paths, not allways. I don't know why. Is it possible do it without empty line.
Script work as I want, and one more thing if it possible. When I use script, I've got somtimes empty line between paths, not allways. I don't know why. Is it possible do it without empty line.
-
Marco
- Posts: 2354
- Joined: 27 Jun 2011 15:20
Re: Need script for collect item/s path/s (#101), to text fi
Sure, I just discovered that #101 returns a final line feed. This should not add empty lines, let me know it if fits your needsDario wrote:Thank you very much Marco.
Script work as I want, and one more thing if it possible. When I use script, I've got somtimes empty line between paths, not allways. I don't know why. Is it possible do it without empty line.
Code: Select all
#101;
writefile("PATHTOYOURTEXTFILE",<clipboard>,"a","t");Tag Backup - SimpleUpdater - XYplorer Messenger - The Unofficial XYplorer Archive - Everything in XYplorer
Don sees all [cit. from viewtopic.php?p=124094#p124094]
Don sees all [cit. from viewtopic.php?p=124094#p124094]
-
Dario
- Posts: 45
- Joined: 20 Aug 2011 17:06
Re: Need script for collect item/s path/s (#101), to text fi
Yes, last script works exactly what I want.
I appreciate your help very much. I hope you live to be a hundred years, like a rich man.
thanks
thanks
-
admin
- Site Admin
- Posts: 66300
- Joined: 22 May 2004 16:48
- Location: Win8.1, Win10, Win11, all @100%
- Contact:
Re: Need script for collect item/s path/s (#101), to text fi
Dario wrote:Yes, last script works exactly what I want.I appreciate your help very much. I hope you live to be a hundred years, like a rich man.
![]()
thanks
FAQ | XY News RSS | XY X
-
Marco
- Posts: 2354
- Joined: 27 Jun 2011 15:20
Re: Need script for collect item/s path/s (#101), to text fi
Thank you Dario, far too kind!
Tag Backup - SimpleUpdater - XYplorer Messenger - The Unofficial XYplorer Archive - Everything in XYplorer
Don sees all [cit. from viewtopic.php?p=124094#p124094]
Don sees all [cit. from viewtopic.php?p=124094#p124094]
-
Stefan
- Posts: 1360
- Joined: 18 Nov 2008 21:47
- Location: Europe
Re: Need script for collect item/s path/s (#101), to text fi
#101 is "File | To Clipboard | Item Path/Name(s) (Ctrl+P)"
We can do this without using the clipboard too:
"%temp%\xyCollectedFiles.txt" is just an temporary file in the users temp folder.
"<get SelectedItemsPathNames><crlf>" returns the currently selected file names incl. path, plus an last line break.
,"a" is an writefile() parameter, find more about in the help > Adv. Topics > Scripting Commands Reference, to see e.g. how to store unicode names.
We can do this without using the clipboard too:
Code: Select all
::writefile("%temp%\xyCollectedFiles.txt", "<get SelectedItemsPathNames><crlf>","a");"%temp%\xyCollectedFiles.txt" is just an temporary file in the users temp folder.
"<get SelectedItemsPathNames><crlf>" returns the currently selected file names incl. path, plus an last line break.
,"a" is an writefile() parameter, find more about in the help > Adv. Topics > Scripting Commands Reference, to see e.g. how to store unicode names.
-
klownboy
- Posts: 4459
- Joined: 28 Feb 2012 19:27
- Location: Windows 11, 25H2 Build 26200.8037 at 100% 2560x1440
Re: Need script for collect item/s path/s (#101), to text fi
Thanks Marco and Stefan, the small script makes it easy to add selected files to a file list. Irfanview has a great wallpaper feature that allows you to change wallpaper on-the-fly using command line parameters similar to this example: So using your little script and assigning it a catalog item or toolbar button allows me to quickly add files to the list. I've assigned the above irfanview command as a pinned item on the taskbar so one click on its icon and the wallpaper changes and without background resources overhead. Very slick!
Thanks,
Ken
Code: Select all
D:\Graphics\IrfanView\i_view32.exe /filelist=G:\Pictures\Ireland Trip 2011\Ireland_16x9.txt /random /wall=3 /killmesoftlyThanks,
Ken
-
Stefan
- Posts: 1360
- Joined: 18 Nov 2008 21:47
- Location: Europe
Re: Need script for collect item/s path/s (#101), to text fi
Just for the fun
i take this issue to do something with HTML() script command
to provide an User Input Dialog with own Buttons:

i take this issue to do something with HTML() script command
to provide an User Input Dialog with own Buttons:

Code: Select all
//Store the collection to this file:
$file= "%tmp%\xyTempCollector.txt";
//Prompt the user with an dialog:
// See Help > Adv. Topics > Scripting Command Reference > HTML
$html = urldecode(html('<html><body><form method="get" action="xys:">
<H3>Save the names of the selected files to an text file</H3>
List of selected files:<BR>
<TEXTAREA WRAP=Off NAME="taINPUT" ROWS=14 COLS=90>'. "<get SelectedItemsPathNames>" .'</TEXTAREA>
<BR>
<BR>
Collect to file<BR>
<font color="blue">'.$file.'</font><BR>
<BR>
<INPUT type="submit" name="actOpenColl" value="Open >" >
<INPUT type="submit" name="actCollNow" value="Collect Now To File!" >
<INPUT type="submit" name="actCollOpen" value="Collect Now AND Open File >" >
</form></body></html>',"830", "600", "Collect Files"));
//get the dialog results if an button was clicked:
end($html=="");
// msg 'Debug: ' .$html;
/*
Debug example:
Debug: ?taINPUT=E:\temp\XY_Script_tests\Test File Name-08.txt
E:\temp\XY_Script_tests\Test File Name-09.txt
E:\temp\XY_Script_tests\Test File Name-10.txt&OpenColl=Open >
*/
// proceed the returned data:
//Get the first part from an '&' subdivided string (File Name-10.txt&OpenColl),
// then the second part of an '=' subdivided string (?taINPUT=E:\temp\):
$SelFiles = gettoken( gettoken($html, "1", "&") ,2, "=" ) . "<crlf>";
//Get the second part from '&' and from that the first of '=' (&OpenColl=)
$Action = gettoken( gettoken($html, "2", "&") ,1, "=" );
//debug:
// msg "SelFiles: " . $SelFiles;
// msg "Action?: " . $Action;
// Do something with the returned data:
if ($Action == "actCollOpen"){
writefile( $file, $SelFiles, "a" );
run notepad $file;
end(1);
}
if ($Action == "actCollNow"){
writefile( $file, $SelFiles, "a" );
//run notepad $file;
end(1);
}
if ($Action == "actOpenColl") {
if(exists($file)==1){
run notepad $file;
}else{
msg "File doesn't exist yet. Collect something first.";
}
-
klownboy
- Posts: 4459
- Joined: 28 Feb 2012 19:27
- Location: Windows 11, 25H2 Build 26200.8037 at 100% 2560x1440
Re: Need script for collect item/s path/s (#101), to text fi
Hi Stefan, Amazing! Your script worked great. I changed "$file" to the text file inwhich I've been saving my jpg file names (with path). Then, I selected some of my newly formatted jpgs with a changed aspect ratio to suit as my desktop wallpaper. The script showed the files in the table and the files were properly added to my existing list - Bingo, it all went off without a hitch!
One note though, when I selected "Open" the text file only, the file opened properly, but I half expected I'd be able to continue afterwards and then add the selected files, but instead it closes. Not a biggie now that I know, but it might be nice to be able to open the file and then perform the addition of the selected files (realizing of course that the open file would have to be reopend to accomplish the save, but I think notepad will tell you that automatically and reopen the file to save the changes. Could the script cycle back or ccontinue and not close out?
Another note (again not that important): I also attempted to change the text editor from "notepad" to "textpad" by changing the appropriated lines to: However, I received an "overflow 0/0" error when I ran the script after selecting "Open". I obviously don't need to use textpad in this case, but I was wondering what I might need to change to prevent the message.
Thanks again for a very helpful script,
Ken
One note though, when I selected "Open" the text file only, the file opened properly, but I half expected I'd be able to continue afterwards and then add the selected files, but instead it closes. Not a biggie now that I know, but it might be nice to be able to open the file and then perform the addition of the selected files (realizing of course that the open file would have to be reopend to accomplish the save, but I think notepad will tell you that automatically and reopen the file to save the changes. Could the script cycle back or ccontinue and not close out?
Another note (again not that important): I also attempted to change the text editor from "notepad" to "textpad" by changing the appropriated lines to:
Code: Select all
run D:\Tools\TextPad\TextPad.exe $file;Thanks again for a very helpful script,
Ken
-
Stefan
- Posts: 1360
- Joined: 18 Nov 2008 21:47
- Location: Europe
Re: Need script for collect item/s path/s (#101), to text fi
Hi Ken, thanks for feedback! Hoping many new users see what else is possible with scripting.klownboy wrote:Hi Stefan, Amazing! Your script worked great.
I think that's by design. The opened notepad just shows you the list and you can edit it if needed.One note though, when I selected "Open" the text file only, the file opened properly,
but I half expected I'd be able to continue afterwards and then add the selected files, but instead it closes.
To have the file open and still add new lines from selected files is not possible this way.
I would have to use an other technic... or maybe it would be possible by reloading the script
always after adding new lines, but that's is not planed by me...
Such overflow is mostly (ever?) evoked by un-proper quoting.I also attempted to change the text editor from "notepad" to "textpad"
by changing the appropriated lines to:Code: Select all
run D:\Tools\TextPad\TextPad.exe $file;
However, I received an "overflow 0/0" error when I ran the script after selecting "Open".
My 'notepad' is an well know term (i don't know the proper description right now) stored in the registry,
but to call an executable with an path you have to use quotes:
Code: Select all
run "D:\Tools\TextPad\TextPad.exe" $file;Somewhere in an post down the thread from my signature is an overview about quoting, if you are interested.
-
klownboy
- Posts: 4459
- Joined: 28 Feb 2012 19:27
- Location: Windows 11, 25H2 Build 26200.8037 at 100% 2560x1440
Re: Need script for collect item/s path/s (#101), to text fi
Hi Stefan, Many thanks for the script. Hopefully other users stumble across this handy script. I'm sure there are many cases where someone wants to collect file names with paths to a file. It will be very handy in my case using it to add jpg file names for use as a Irfanview wallpaper.
I've been tinkering with AutoHotkey somewhat in the past couple of months. Very nice scripting possibilities inside and outside of XYplorer...just a beginner though.
It was forgetful of me not to have quoted the textpad name/path. I did after your last post and it ran fine using testpad in lieu of notepad. For experimentation purposes, I opened the text file externally using textpad and then ran the script and used the option to add the selected files and open textpad. The editor simply asked the question, "Another application has updated the text file (i.e., the file name). Do you want to reload it?" Obviously, these are the changes made due to the script. I replied OK, and the update was made. - no issues.
Thanks again,
Ken
I've been tinkering with AutoHotkey somewhat in the past couple of months. Very nice scripting possibilities inside and outside of XYplorer...just a beginner though.
It was forgetful of me not to have quoted the textpad name/path. I did after your last post and it ran fine using testpad in lieu of notepad. For experimentation purposes, I opened the text file externally using textpad and then ran the script and used the option to add the selected files and open textpad. The editor simply asked the question, "Another application has updated the text file (i.e., the file name). Do you want to reload it?" Obviously, these are the changes made due to the script. I replied OK, and the update was made. - no issues.
Thanks again,
Ken
XYplorer Beta Club