discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

After changement it doesn't work any longer; use seems to work the wrong way or work not any more

MP
Manfred Preussig
Wed, Jan 11, 2017 12:59 AM

Hello,
now it's use- Since the whole case is a great object I made it with some functions. Each of
them is for one part (like bottom or the right wall). Each is plate with cut-offs or so. So each
will be printed alone with an orientation possible different to the orientation used in the
project. So hang-over parts or so are reduced. As all of the modules are in one file it works
fine but if the files are different and concatuated through use-commands it works not. There
is no error but there is no device at all.
That's the whole-case file. Only two comments are missing
[code]
use <Z:\Gehäuse_2_Boden.scad>;
use <Z:\Gehäuse_2_Deckel.scad>;
use <Z:\Gehäuse_2_links.scad>;
use <Z:\Gehäuse_2_rechts.scad>;
use <Z:\Gehäuse_2_vorne.scad>;
use <Z:\Gehäuse_2_hinten.scad>;
use <Z:\Gehäuse_2_prism.scad>;
use <Z:\Gehäuse_2_hole.scad>;
use <Z:\Gehäuse_2_Schraubklotz.scad>;
use <Z:\Gehäuse_2_SKmitEinschub.scad>;
use <Z:\Gehäuse_2_Fan.scad>;
// Mutterkuhle .... Größe
Mutter=5.5;

translate([-43,-90,0]) {
    Boden();
    WandLinks();
    WandRechts();
    Deckel();
	WandVorne();
	WandHinten();
}

[/code]
A part of the directory of 'Z' is as appendix added. All of the files are really there. So: what's
wrong here? I can't find the error.

greetings

Manfred

Der folgende Teil dieser Nachricht enthält einen Anhang im
sogenannten Internet MIME Nachrichtenformat.
Wenn Sie Pegasus Mail oder ein beliebiges anderes MIME-kompatibles
Email-System verwenden, sollten Sie den Anhang mit Ihrem Email-System
speichern oder anzeigen können. Gegebenenfalls fragen Sie Ihren Administrator.

The following section of this message contains a file attachment
prepared for transmission using the Internet MIME message format.
If you are using Pegasus Mail, or any another MIME-compliant system,
you should be able to save it or view it from within your mailer.
If you cannot, please ask your system administrator for assistance.

---- Datei Information/File information -----------
Datei/File:  Inhalt.jpg
Datum/Date:  11 Jan 2017, 1:55
Größe/Size:  29255 bytes.
Typ/Type:    JPEG-image

Hello, now it's use- Since the whole case is a great object I made it with some functions. Each of them is for one part (like bottom or the right wall). Each is plate with cut-offs or so. So each will be printed alone with an orientation possible different to the orientation used in the project. So hang-over parts or so are reduced. As all of the modules are in one file it works fine but if the files are different and concatuated through use-commands it works not. There is no error but there is no device at all. That's the whole-case file. Only two comments are missing [code] use <Z:\Gehäuse_2_Boden.scad>; use <Z:\Gehäuse_2_Deckel.scad>; use <Z:\Gehäuse_2_links.scad>; use <Z:\Gehäuse_2_rechts.scad>; use <Z:\Gehäuse_2_vorne.scad>; use <Z:\Gehäuse_2_hinten.scad>; use <Z:\Gehäuse_2_prism.scad>; use <Z:\Gehäuse_2_hole.scad>; use <Z:\Gehäuse_2_Schraubklotz.scad>; use <Z:\Gehäuse_2_SKmitEinschub.scad>; use <Z:\Gehäuse_2_Fan.scad>; // Mutterkuhle .... Größe Mutter=5.5; translate([-43,-90,0]) { Boden(); WandLinks(); WandRechts(); Deckel(); WandVorne(); WandHinten(); } [/code] A part of the directory of 'Z' is as appendix added. All of the files are really there. So: what's wrong here? I can't find the error. greetings Manfred Der folgende Teil dieser Nachricht enthält einen Anhang im sogenannten Internet MIME Nachrichtenformat. Wenn Sie Pegasus Mail oder ein beliebiges anderes MIME-kompatibles Email-System verwenden, sollten Sie den Anhang mit Ihrem Email-System speichern oder anzeigen können. Gegebenenfalls fragen Sie Ihren Administrator. The following section of this message contains a file attachment prepared for transmission using the Internet MIME message format. If you are using Pegasus Mail, or any another MIME-compliant system, you should be able to save it or view it from within your mailer. If you cannot, please ask your system administrator for assistance. ---- Datei Information/File information ----------- Datei/File: Inhalt.jpg Datum/Date: 11 Jan 2017, 1:55 Größe/Size: 29255 bytes. Typ/Type: JPEG-image
P
Parkinbot
Wed, Jan 11, 2017 1:52 AM

Try to rename your file and avoid using German Umlaute like "ä".

--
View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20018.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Try to rename your file and avoid using German Umlaute like "ä". -- View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20018.html Sent from the OpenSCAD mailing list archive at Nabble.com.
M
MichaelAtOz
Wed, Jan 11, 2017 2:41 AM

wiki https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement
"use <filename> imports modules and functions, but does not execute any
commands other than those definitions." if they have variables needed
globally you should 'include<>' instead.


Admin - PM me if you need anything, or if I've done something stupid...

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it! http://www.ourfairdeal.org/  time is running out!

View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

wiki <https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement> "use <filename> imports modules and functions, but does not execute any commands other than those definitions." if they have variables needed globally you should 'include<>' instead. ----- Admin - PM me if you need anything, or if I've done something stupid... Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above. The TPP is no simple “trade agreement.” Fight it! http://www.ourfairdeal.org/ time is running out! -- View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.html Sent from the OpenSCAD mailing list archive at Nabble.com.
MP
Manfred Preussig
Thu, Jan 12, 2017 12:22 AM

Hello,
no global varables but it was really the 'ä'. That's surprising to me since we have unicode. But
it is this way.

greetings

Manfred

Am 10 Jan 2017 um 19:41 hat MichaelAtOz geschrieben:

wiki
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement
"use <filename> imports modules and functions, but does not execute
any commands other than those definitions." if they have variables
needed globally you should 'include<>' instead.


Admin - PM me if you need anything, or if I've done something
stupid...

Unless specifically shown otherwise above, my contribution is in the
Public Domain; to the extent possible under law, I have waived all
copyright and related or neighbouring rights to this work. Obviously
inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it!
http://www.ourfairdeal.org/  time is running out! -- View this
message in context:
http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-
use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.htm
l Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

Hello, no global varables but it was really the 'ä'. That's surprising to me since we have unicode. But it is this way. greetings Manfred Am 10 Jan 2017 um 19:41 hat MichaelAtOz geschrieben: > wiki > <https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement> > "use <filename> imports modules and functions, but does not execute > any commands other than those definitions." if they have variables > needed globally you should 'include<>' instead. > > > > ----- > Admin - PM me if you need anything, or if I've done something > stupid... > > Unless specifically shown otherwise above, my contribution is in the > Public Domain; to the extent possible under law, I have waived all > copyright and related or neighbouring rights to this work. Obviously > inclusion of works of previous authors is not included in the above. > > The TPP is no simple “trade agreement.” Fight it! > http://www.ourfairdeal.org/ time is running out! -- View this > message in context: > http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer- > use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.htm > l Sent from the OpenSCAD mailing list archive at Nabble.com. > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
DM
doug moen
Thu, Jan 12, 2017 12:31 AM

You are using Windows, and OpenSCAD uses UTF-8 internally. Windows by
default does not correctly support UTF-8. You might be able to make this
work by changing the Windows code page to 65001 before running OpenSCAD.
Apparently the CLI command "CHCP 65001" will do that. But I haven't tested
this.

On 11 January 2017 at 19:22, Manfred Preussig PreussigM@web.de wrote:

Hello,
no global varables but it was really the 'ä'. That's surprising to me
since we have unicode. But it is this way.

greetings

Manfred

Am 10 Jan 2017 um 19:41 hat MichaelAtOz geschrieben:

wiki
https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement
"use <filename> imports modules and functions, but does not execute
any commands other than those definitions." if they have variables
needed globally you should 'include<>' instead.


Admin - PM me if you need anything, or if I've done something
stupid...

Unless specifically shown otherwise above, my contribution is in the
Public Domain; to the extent possible under law, I have waived all
copyright and related or neighbouring rights to this work. Obviously
inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it!
http://www.ourfairdeal.org/  time is running out! -- View this
message in context:
http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-
use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.htm
l Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list
Discuss@lists.openscad.org
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org

You are using Windows, and OpenSCAD uses UTF-8 internally. Windows by default does not correctly support UTF-8. You might be able to make this work by changing the Windows code page to 65001 before running OpenSCAD. Apparently the CLI command "CHCP 65001" will do that. But I haven't tested this. On 11 January 2017 at 19:22, Manfred Preussig <PreussigM@web.de> wrote: > Hello, > no global varables but it was really the 'ä'. That's surprising to me > since we have unicode. But it is this way. > > greetings > > Manfred > > Am 10 Jan 2017 um 19:41 hat MichaelAtOz geschrieben: > > > wiki > > <https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement> > > "use <filename> imports modules and functions, but does not execute > > any commands other than those definitions." if they have variables > > needed globally you should 'include<>' instead. > > > > > > > > ----- > > Admin - PM me if you need anything, or if I've done something > > stupid... > > > > Unless specifically shown otherwise above, my contribution is in the > > Public Domain; to the extent possible under law, I have waived all > > copyright and related or neighbouring rights to this work. Obviously > > inclusion of works of previous authors is not included in the above. > > > > The TPP is no simple “trade agreement.” Fight it! > > http://www.ourfairdeal.org/ time is running out! -- View this > > message in context: > > http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer- > > use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.htm > > l Sent from the OpenSCAD mailing list archive at Nabble.com. > > > > _______________________________________________ > > OpenSCAD mailing list > > Discuss@lists.openscad.org > > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > > > > > _______________________________________________ > OpenSCAD mailing list > Discuss@lists.openscad.org > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org > >
P
Parkinbot
Thu, Jan 12, 2017 10:45 AM

Hmm, I opened a command line, did a "CHCP 65001" successfully and then
started OpenSCAD out of that window, like a batch file would do. But that
doesn't work. Doesn't seem to be a viable solution. I know the nasty problem
from LaTEX, where you have to include the right package. But you never know
in advance, which code page was active when a file was saved, unless the
file has some header.

As file system access is concerned, there is nothing to guess. So it is up
to the Windows port of OpenSCAD to adapt the coding for include/use/import
and do on.

http://superuser.com/questions/239810/setting-utf8-as-default-character-encoding-in-windows-7
http://superuser.com/questions/239810/setting-utf8-as-default-character-encoding-in-windows-7

doug.moen wrote

You are using Windows, and OpenSCAD uses UTF-8 internally. Windows by
default does not correctly support UTF-8. You might be able to make this
work by changing the Windows code page to 65001 before running OpenSCAD.
Apparently the CLI command "CHCP 65001" will do that. But I haven't tested
this.

On 11 January 2017 at 19:22, Manfred Preussig <

PreussigM@

> wrote:

Hello,
no global varables but it was really the 'ä'. That's surprising to me
since we have unicode. But it is this way.

greetings

Manfred

Am 10 Jan 2017 um 19:41 hat MichaelAtOz geschrieben:

wiki

<https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement>

"use

<filename> imports modules and functions, but does not execute

any commands other than those definitions." if they have variables
needed globally you should 'include<>' instead.


Admin - PM me if you need anything, or if I've done something
stupid...

Unless specifically shown otherwise above, my contribution is in the
Public Domain; to the extent possible under law, I have waived all
copyright and related or neighbouring rights to this work. Obviously
inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it!
http://www.ourfairdeal.org/  time is running out! -- View this
message in context:
http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-
use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.htm
l Sent from the OpenSCAD mailing list archive at Nabble.com.


OpenSCAD mailing list

Discuss@.openscad

Discuss@.openscad

Discuss@.openscad

Hmm, I opened a command line, did a "CHCP 65001" successfully and then started OpenSCAD out of that window, like a batch file would do. But that doesn't work. Doesn't seem to be a viable solution. I know the nasty problem from LaTEX, where you have to include the right package. But you never know in advance, which code page was active when a file was saved, unless the file has some header. As file system access is concerned, there is nothing to guess. So it is up to the Windows port of OpenSCAD to adapt the coding for include/use/import and do on. http://superuser.com/questions/239810/setting-utf8-as-default-character-encoding-in-windows-7 <http://superuser.com/questions/239810/setting-utf8-as-default-character-encoding-in-windows-7> doug.moen wrote > You are using Windows, and OpenSCAD uses UTF-8 internally. Windows by > default does not correctly support UTF-8. You might be able to make this > work by changing the Windows code page to 65001 before running OpenSCAD. > Apparently the CLI command "CHCP 65001" will do that. But I haven't tested > this. > > On 11 January 2017 at 19:22, Manfred Preussig &lt; > PreussigM@ > &gt; wrote: > >> Hello, >> no global varables but it was really the 'ä'. That's surprising to me >> since we have unicode. But it is this way. >> >> greetings >> >> Manfred >> >> Am 10 Jan 2017 um 19:41 hat MichaelAtOz geschrieben: >> >> > wiki >> > >> &lt;https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Include_Statement&gt; >> > "use > <filename> > imports modules and functions, but does not execute >> > any commands other than those definitions." if they have variables >> > needed globally you should 'include<>' instead. >> > >> > >> > >> > ----- >> > Admin - PM me if you need anything, or if I've done something >> > stupid... >> > >> > Unless specifically shown otherwise above, my contribution is in the >> > Public Domain; to the extent possible under law, I have waived all >> > copyright and related or neighbouring rights to this work. Obviously >> > inclusion of works of previous authors is not included in the above. >> > >> > The TPP is no simple “trade agreement.” Fight it! >> > http://www.ourfairdeal.org/ time is running out! -- View this >> > message in context: >> > http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer- >> > use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20019.htm >> > l Sent from the OpenSCAD mailing list archive at Nabble.com. >> > >> > _______________________________________________ >> > OpenSCAD mailing list >> > > Discuss@.openscad >> > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> >> >> >> >> _______________________________________________ >> OpenSCAD mailing list >> > Discuss@.openscad >> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org >> >> > > _______________________________________________ > OpenSCAD mailing list > Discuss@.openscad > http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org -- View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20046.html Sent from the OpenSCAD mailing list archive at Nabble.com.
TP
Torsten Paul
Thu, Jan 12, 2017 12:43 PM

As file system access is concerned, there is nothing to guess. So
it is up to the Windows port of OpenSCAD to adapt the coding for
include/use/import and do on.

Yes, file system access needs to convert the filename, the content
of the file is defined to be UTF-8 always.

So the filename specified in the include/use statement must be
UTF-8 encoded (and the internal editor should enforce that).
If the file is edited with a different editor and saved in some
other encoding, things will break (and in that case it would not
be a bug in the application).

I guess we need to find out if the reported issue is a bug or
wrong file encoding.

ciao,
Torsten.

> As file system access is concerned, there is nothing to guess. So > it is up to the Windows port of OpenSCAD to adapt the coding for > include/use/import and do on. > Yes, file system access needs to convert the filename, the content of the file is defined to be UTF-8 always. So the filename specified in the include/use statement must be UTF-8 encoded (and the internal editor *should* enforce that). If the file is edited with a different editor and saved in some other encoding, things will break (and in that case it would not be a bug in the application). I guess we need to find out if the reported issue is a bug or wrong file encoding. ciao, Torsten.
P
Parkinbot
Thu, Jan 12, 2017 4:02 PM

tp3 wrote

So the filename specified in the include/use statement must be
UTF-8 encoded (and the internal editor should enforce that).
If the file is edited with a different editor and saved in some
other encoding, things will break (and in that case it would not
be a bug in the application).

I guess we need to find out if the reported issue is a bug or
wrong file encoding.

The encoding of the internal editor seems to be native. Saving "öäü" into a
scad file in Windows, will show up as "öäü" in other editors like Notepad.
Thus OpenSCAD seems to translate from platform to UTF8 encoding, before it
tries to open a file. While this can work cross-platform, it doesn't where a
file was created and saved using immanent encoding differences (e.g. "öäü")
on a non-UTF8 platform like Windows.

The problem is well-known, widely spread and not so easy to solve, unless
OpenSCAD can find out/guess properly which encoding was used for save.

A work-around could be, to try to open a file first with native encoding
(95%) and if this fails, retry with the UTF8-converted filename in the case
where the natively encoded filename and the UTF8-converted filename don't
match.
OK, this scheme can fail, when both encodings resolve to a valid file in the
same folder, which is extremly unlikely even on a starry-eyed idealist's
machine.

--
View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20050.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

tp3 wrote > So the filename specified in the include/use statement must be > UTF-8 encoded (and the internal editor *should* enforce that). > If the file is edited with a different editor and saved in some > other encoding, things will break (and in that case it would not > be a bug in the application). > > I guess we need to find out if the reported issue is a bug or > wrong file encoding. The encoding of the internal editor seems to be native. Saving "öäü" into a scad file in Windows, will show up as "öäü" in other editors like Notepad. Thus OpenSCAD seems to translate from platform to UTF8 encoding, before it tries to open a file. While this can work cross-platform, it doesn't where a file was created and saved using immanent encoding differences (e.g. "öäü") on a non-UTF8 platform like Windows. The problem is well-known, widely spread and not so easy to solve, unless OpenSCAD can find out/guess properly which encoding was used for save. A work-around could be, to try to open a file first with native encoding (95%) and if this fails, retry with the UTF8-converted filename in the case where the natively encoded filename and the UTF8-converted filename don't match. OK, this scheme can fail, when both encodings resolve to a valid file in the same folder, which is extremly unlikely even on a starry-eyed idealist's machine. -- View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20050.html Sent from the OpenSCAD mailing list archive at Nabble.com.
TP
Torsten Paul
Thu, Jan 12, 2017 4:19 PM

The encoding of the internal editor seems to be native.
Saving "öäü" into a scad file in Windows, will show up
as "öäü" in other editors like Notepad.
Thus OpenSCAD seems to translate from platform to UTF8
encoding, before it tries to open a file. While this can
work cross-platform, it doesn't where a file was created
and saved using immanent encoding differences (e.g. "öäü")
on a non-UTF8 platform like Windows.

I disagree it's up to OpenSCAD trying to fix that. OpenSCAD
files are UTF-8 and that's it.
Guessing encodings always ends up in broken cases and more
trouble. I'd vote for a simple rule that is clearly defined.
In all other cases this is requested time and time again
(and rightly so).

If you want to use an external editor, that's totally fine and
also a supported scenario. The only condition is to use a sane
one that supports UTF-8.

ciao,
Torsten.

> The encoding of the internal editor seems to be native. > Saving "öäü" into a scad file in Windows, will show up > as "öäü" in other editors like Notepad. > Thus OpenSCAD seems to translate from platform to UTF8 > encoding, before it tries to open a file. While this can > work cross-platform, it doesn't where a file was created > and saved using immanent encoding differences (e.g. "öäü") > on a non-UTF8 platform like Windows. > I disagree it's up to OpenSCAD trying to fix that. OpenSCAD files are UTF-8 and that's it. Guessing encodings always ends up in broken cases and more trouble. I'd vote for a simple rule that is clearly defined. In all other cases this is requested time and time again (and rightly so). If you want to use an external editor, that's totally fine and also a supported scenario. The only condition is to use a sane one that supports UTF-8. ciao, Torsten.
P
Parkinbot
Thu, Jan 12, 2017 5:36 PM

tp3 wrote

I disagree it's up to OpenSCAD trying to fix that. OpenSCAD
files are UTF-8 and that's it.

in Windows they are NOT. Thats the point.

--
View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20052.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

tp3 wrote > I disagree it's up to OpenSCAD trying to fix that. OpenSCAD > files are UTF-8 and that's it. in Windows they are NOT. Thats the point. -- View this message in context: http://forum.openscad.org/After-changement-it-doesn-t-work-any-longer-use-seems-to-work-the-wrong-way-or-work-not-any-more-tp20017p20052.html Sent from the OpenSCAD mailing list archive at Nabble.com.