Re: Titelling image array in montage -- German umlauts

"Wolfgang Hugemann" <[email protected]>
Newsgroups gmane.comp.video.image-magick.user
Message-ID <[email protected]>
Thank you for this hint; I didn't know that.

I have just tested it and found that you may as well directly start a DOS shell window with the option "/V:on".

I however don't think that is is recommendable to rely on code which uses "!variable!", because there are other ways to invoke batch file processing, like Drag & Drop or SendTo. And these start the CMD shell without this option.

Or is there a way that ensures that a DOS shell is always started with the option "/V:on"?

Greetings from Germany
Wolfgang Hugemann

----- original Nachricht --------

Betreff: Re: [magick-users] Titelling image array in montage -- German umlauts
Gesendet: Mi, 18. Nov 2009
Von: Glenn Linderman<[email protected]>

> On approximately 11/18/2009 12:58 AM, came the following characters from 
> the keyboard of Wolfgang Hugemann:
> > The problem occurs in the last line of "c.bat", where German umlauts are
> interchanged by crude characters. Is there any means by which I can instruct
> montage to use a certain coding for the text supplied in "title.txt"?
> >
> 
> I can't help here, sorry. But...
> 
> > ........................
> >
> > I will now shortly explain what's happening in the batch files, although
> this is not neccessary to understand my problem:
> >
> > The two batch files are placed in the root directory of the tree and are
> called from there.
> >
> > The FOR loop in the first batch file runs through the directory tree,
> filters all directory names containing the string "digibis" and passes each
> of these directories to C.BAT as the single command line parameter.
> >
> > C.BAT increases the environment variable COUNT, echoes the directory name
> into TITLE.TXT (which is necessary because of the backslash used in Windows
> pathnames, which would otherwise be considered as starting an escape
> sequence).
> >
> > MONTAGE then generates an index print of all images in the subdirectory
> and stores it in the file N.JPG in the root directory, with N being an
> integer number.
> >
> > Please note that the operation performed in C.BAT cannot be performed
> within the FOR loop, even not if bracketed by parantheses "(", ")": The
> environment variable COUNT would not be increased while running the FOR loop
> (for reasons that I could not figure out...).
> >
> 
> Here's a sample batch file to demonstrate the issue regarding count. The 
> problem with count is that %environment variables% in the for command, 
> the whole thing, regardless of how many () lines, are substituted at the 
> time the for command is parsed. Then those lines are used by the loop.
> 
> Start a cmd, then start another with the following command
> 
> cmd /v:on
> 
> In that nested cmd, run the following lines as a batch file:
> 
> @echo off
> set count=0
> for %%a in (a b c) do (
> set /A count+=1
> echo normal count %count% %%a
> echo deferred count !count! %%a
> )
> echo final count %count%
> echo final deferred count !count!
> 
> For explanation, see
> 
> cmd /?
> 
> and look for "deferred environment variable expansion" both in the 
> option list (/v) and in a later paragraph that begins with those words.
> 
> So as you see, the count was getting incremented by the loop, but the 
> %expansion% had already taken place, so the initial value of count had 
> already been substituted into the loop commands before the count had 
> been incremented.
> 

--- original Nachricht Ende ----
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.