newLISP Fan Club

Forum => newLISP in the real world => Topic started by: cormullion on January 12, 2006, 06:52:16 AM

Title: Quoting filenames with single quotes in the names problem
Post by: cormullion on January 12, 2006, 06:52:16 AM
I've discovered that my approach to quoting filenames with single quotes isn't a good idea, since I've discovered loads of filenames that have single quotes in their names. :-) So I want to use (format " %s " file-name) and surround the %s with something other than single quotes... Is it possible to do something that's both acceptable to newLISP and the Unix shell?
Title:
Post by: Lutz on January 12, 2006, 10:00:22 AM
You could try double quotes in UNIX for delimiting file names. To allow " in newLISP inside a string you have several ways to do it:



(format ""%s"" file-name)

(format {"%s"} file-name)

(format [text]"%s"[/text] file-name)


This way UNIX will not trip over single quotes part of the filename. I think this would also work on Win32.



Lutz



ps: both {,} and [text],[/text] suppress escape character processing inside the string.
Title:
Post by: cormullion on January 13, 2006, 03:36:14 AM
Yes, these changes work OK, as far as I can see. Thanks!