GP SoftwareTwitter
Opus FAQsManualCommandsObjects

@nofilenamequoting and "{allfilepath$}" issue

bug-report

#1

When using the @nofilenamequoting and {allfilepath$} together and adding the quotes manually like: "{allfilepath$}", an unwanted leading space is inserted in the resultant output.

Minimum example code:

@nofilenamequoting
select all
echo "{allfilepath$}"
pause

In an example directory C:\test containing 3 test files the following output is produced:

" C:\test\test1.txt C:\test\test2.txt C:\test\test3.txt"

Note the extraneous space character immediately after the first quotation mark.


The test button is attached below (the only change from the code above is that it uses "{allfilepath$|sep=*}" to make a TortoiseProc-compliant file list (filenames separated by asterisk instead of space).

test.dcf (392 Bytes)


#2

Does doing that ever make sense? What happens if there is a space in one of the names? Why would a program want a list of names in quotes like that, without quotes around the individual names? (Do such programs exist?)


#3

I’m trying to make a button that selects all folders and calls the TortoiseProc /command:update /path:"{allfilepath$|sep=*}" and that’s the only way I can make it work (with @nofilenamequoting and manual quotation marks). However due to an issue described above, the first folder is always skipped by the TortoiseProc (it says right there “skipped”) because it gets incorrect path (it interprets the space differently or something).

As for the weird commandline requirements, scroll to the bottom of this page for TortoiseProc commandline example: https://tortoisesvn.net/docs/nightly/TortoiseSVN_en/tsvn-automation.html

It handles the spaces in filenames by having them separated by the asterisks instead of spaces.


FWIW the reason I’m making this button is that the svn doesn’t have a selective check out feature, so I have project’s folders-of-interest checked out manually one-by-one in a project folder (which itself is not under svn) so if I want to update such manually made selectively checked out project, I can’t just right click the parent folder > SVN Update, I would have to select all the folders inside and then SVN Update. The idea of this button is to automate this via a single click.


#4

We’ve fixed this for the next update. Thanks for reporting it!