C
crunchysteve
Wed, Nov 25, 2020 7:39 PM
My 2c? Then it wouldn’t be OpenSCAD, it would bePython 3.
Right now I’m trying to learn Python 3 and, because I have a lifelong exec
dysfuntion disorder, I struggle to get my head around it. I know not why,
but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC design
work I might find myself stranded, oK, yes back compatibility, but forhow
long?
Sure, OpenSCAD has quirks and limitations, but the language is the product.
Like I say, just my 2c.
Make things, travel and tell stories.
Sent from: http://forum.openscad.org/
My 2c? Then it wouldn’t be OpenSCAD, it would bePython 3.
Right now I’m trying to learn Python 3 and, because I have a lifelong exec
dysfuntion disorder, I struggle to get my head around it. I know not why,
but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC design
work I might find myself stranded, oK, yes back compatibility, but forhow
long?
Sure, OpenSCAD has quirks and limitations, but the language is the product.
Like I say, just my 2c.
-----
Make things, travel and tell stories.
--
Sent from: http://forum.openscad.org/
L
lar3ry@sasktel.net
Wed, Nov 25, 2020 8:54 PM
On 25 Nov 2020 at 12:39, crunchysteve wrote:
My 2c? Then it wouldn´t be OpenSCAD, it would bePython 3.
Right now I´m trying to learn Python 3 and, because I have a lifelong exec
dysfuntion disorder, I struggle to get my head around it. I know not why,
but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC design
work I might find myself stranded, oK, yes back compatibility, but forhow
long?
Sure, OpenSCAD has quirks and limitations, but the language is the product.
Like I say, just my 2c.
I'll add a penny to that 2c. I am apparently unable to wrap my head around
Python. An OpenSCADAlike that requires me to do Python would definitely
be a non-starter for me.
On 25 Nov 2020 at 12:39, crunchysteve wrote:
> My 2c? Then it wouldn´t be OpenSCAD, it would bePython 3.
>
> Right now I´m trying to learn Python 3 and, because I have a lifelong exec
> dysfuntion disorder, I struggle to get my head around it. I know not why,
> but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC design
> work I might find myself stranded, oK, yes back compatibility, but forhow
> long?
>
> Sure, OpenSCAD has quirks and limitations, but the language is the product.
>
> Like I say, just my 2c.
I'll add a penny to that 2c. I am apparently unable to wrap my head around
Python. An OpenSCADAlike that requires me to do Python would definitely
be a non-starter for me.
NH
nop head
Wed, Nov 25, 2020 11:33 PM
Yes Python is a lot more complicated than OpenSCAD, so I guess it would be
harder to learn for a Newbie. It is hard to judge as I never struggled to
learn a computer language but after ending a career writing C++, I much
prefer Python for programming and OpenScad for describing in my spare time.
On Wed, 25 Nov 2020 at 20:55, lar3ry@sasktel.net wrote:
On 25 Nov 2020 at 12:39, crunchysteve wrote:
My 2c? Then it wouldn´t be OpenSCAD, it would bePython 3.
Right now I´m trying to learn Python 3 and, because I have a lifelong
dysfuntion disorder, I struggle to get my head around it. I know not why,
but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC
work I might find myself stranded, oK, yes back compatibility, but forhow
long?
Sure, OpenSCAD has quirks and limitations, but the language is the
Yes Python is a lot more complicated than OpenSCAD, so I guess it would be
harder to learn for a Newbie. It is hard to judge as I never struggled to
learn a computer language but after ending a career writing C++, I much
prefer Python for programming and OpenScad for describing in my spare time.
On Wed, 25 Nov 2020 at 20:55, <lar3ry@sasktel.net> wrote:
> On 25 Nov 2020 at 12:39, crunchysteve wrote:
> > My 2c? Then it wouldn´t be OpenSCAD, it would bePython 3.
> >
> > Right now I´m trying to learn Python 3 and, because I have a lifelong
> exec
> > dysfuntion disorder, I struggle to get my head around it. I know not why,
> > but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC
> design
> > work I might find myself stranded, oK, yes back compatibility, but forhow
> > long?
> >
> > Sure, OpenSCAD has quirks and limitations, but the language is the
> product.
> >
> > Like I say, just my 2c.
>
> I'll add a penny to that 2c. I am apparently unable to wrap my head around
> Python. An OpenSCADAlike that requires me to do Python would definitely
> be a non-starter for me.
>
>
>
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
>
T
Troberg
Thu, Nov 26, 2020 8:15 AM
Well, there's already dozens of projects on github which replace OpenSCAD
with a better language, including my own project Curv. For some reason,
none of them are as popular as OpenSCAD.
Translating idiomatic OpenSCAD to idiomatic, maintainable Python is
ridiculously hard. If you want 100% backward compatibility, then you
basically have to embed an OpenSCAD interpreter in Python to handle all
the weird language semantics, such as: override semantics of multiple
variable assignments to the same name (which is important when including a
file and then overriding some of its variable definitions); dynamic
scoping of $ variables; tail recursive functions; the fact that each call
to children() re-evaluates the actual parameter using the current values
of $ variables; and so on. If you instead translate to idiomatic,
maintainable Python, then you'll only get an approximation, some OpenSCAD
idioms won't work, and manual fixup will be required.
If you implement this idea as a new project, then the translator will be a
major effort, and will require a lot of ongoing work to track new language
features.
This.
I looked into this when I was new at OpenSCAD, I even started to build a VBA
layer which would act as a front end to the OpenSCAD code, but in the end,
after quite a lot of work, I dropped it, because I realized that to properly
"drive" OpenSCAD, I would have to re-implement almost all of the 3D logic.
My code needed to know what OpenSCAD was going to do with the stuff I put
into it, and know what the result was going to be, for it to be able to do
the stuff I wanted, and then it would be easier to just rebuild it all, and
I didn't want to do that.
Yes, OpenSCAD can be very frustrating sometimes, and seemingly simple things
can be next to impossible (see my 2D outline thingy in a recent thread...),
but it can almost always get the work done simply and effectively, and if
you take some times building a part library and a library of helper modules,
it's very nice to work with. My OpenSCAD code doesn't look much like
OpenSCAD at all anymore, especially when I do 3D stuff, as I almost
exclusively use my parts and helper modules, and almost never use the base
OpenSCAD functions, not even basic stuff like translate() and rotate().
--
Sent from: http://forum.openscad.org/
doug.moen wrote
> Well, there's already dozens of projects on github which replace OpenSCAD
> with a better language, including my own project Curv. For some reason,
> none of them are as popular as OpenSCAD.
>
> Translating idiomatic OpenSCAD to idiomatic, maintainable Python is
> ridiculously hard. If you want 100% backward compatibility, then you
> basically have to embed an OpenSCAD interpreter in Python to handle all
> the weird language semantics, such as: override semantics of multiple
> variable assignments to the same name (which is important when including a
> file and then overriding some of its variable definitions); dynamic
> scoping of $ variables; tail recursive functions; the fact that each call
> to children() re-evaluates the actual parameter using the current values
> of $ variables; and so on. If you instead translate to idiomatic,
> maintainable Python, then you'll only get an approximation, some OpenSCAD
> idioms won't work, and manual fixup will be required.
>
> If you implement this idea as a new project, then the translator will be a
> major effort, and will require a lot of ongoing work to track new language
> features.
This.
I looked into this when I was new at OpenSCAD, I even started to build a VBA
layer which would act as a front end to the OpenSCAD code, but in the end,
after quite a lot of work, I dropped it, because I realized that to properly
"drive" OpenSCAD, I would have to re-implement almost all of the 3D logic.
My code needed to know what OpenSCAD was going to do with the stuff I put
into it, and know what the result was going to be, for it to be able to do
the stuff I wanted, and then it would be easier to just rebuild it all, and
I didn't want to do that.
Yes, OpenSCAD can be very frustrating sometimes, and seemingly simple things
can be next to impossible (see my 2D outline thingy in a recent thread...),
but it can almost always get the work done simply and effectively, and if
you take some times building a part library and a library of helper modules,
it's very nice to work with. My OpenSCAD code doesn't look much like
OpenSCAD at all anymore, especially when I do 3D stuff, as I almost
exclusively use my parts and helper modules, and almost never use the base
OpenSCAD functions, not even basic stuff like translate() and rotate().
--
Sent from: http://forum.openscad.org/
TH
Tim Hawkins
Thu, Nov 26, 2020 10:49 AM
The biggest break in moving to python is having to deal with the indent
based blocks. Which I personally have, at work I spend not insignificant
amounts of time fixing broken kubernetes yaml files, so much so that we
have now switched everything to json (k8s does both), becuase it's easier.
Please if openscad shifts language base, don't use python, it sucks,
JavaScript is much better and the two main implementations squirrelmonkey
and v8 are designed to be embedded in c++ based codebases and allow
extension by adding default objects and functions to the interpreter. Both
also support JIT compilation. JavaScript has a bigger user base, tooling
and is closer to the existing language syntax.
On Thu, Nov 26, 2020, 07:34 nop head nop.head@gmail.com wrote:
Yes Python is a lot more complicated than OpenSCAD, so I guess it would be
harder to learn for a Newbie. It is hard to judge as I never struggled to
learn a computer language but after ending a career writing C++, I much
prefer Python for programming and OpenScad for describing in my spare time.
On Wed, 25 Nov 2020 at 20:55, lar3ry@sasktel.net wrote:
On 25 Nov 2020 at 12:39, crunchysteve wrote:
My 2c? Then it wouldn´t be OpenSCAD, it would bePython 3.
Right now I´m trying to learn Python 3 and, because I have a lifelong
dysfuntion disorder, I struggle to get my head around it. I know not
but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC
work I might find myself stranded, oK, yes back compatibility, but
long?
Sure, OpenSCAD has quirks and limitations, but the language is the
The biggest break in moving to python is having to deal with the indent
based blocks. Which I personally have, at work I spend not insignificant
amounts of time fixing broken kubernetes yaml files, so much so that we
have now switched everything to json (k8s does both), becuase it's easier.
Please if openscad shifts language base, don't use python, it sucks,
JavaScript is much better and the two main implementations squirrelmonkey
and v8 are designed to be embedded in c++ based codebases and allow
extension by adding default objects and functions to the interpreter. Both
also support JIT compilation. JavaScript has a bigger user base, tooling
and is closer to the existing language syntax.
On Thu, Nov 26, 2020, 07:34 nop head <nop.head@gmail.com> wrote:
> Yes Python is a lot more complicated than OpenSCAD, so I guess it would be
> harder to learn for a Newbie. It is hard to judge as I never struggled to
> learn a computer language but after ending a career writing C++, I much
> prefer Python for programming and OpenScad for describing in my spare time.
>
>
> On Wed, 25 Nov 2020 at 20:55, <lar3ry@sasktel.net> wrote:
>
>> On 25 Nov 2020 at 12:39, crunchysteve wrote:
>> > My 2c? Then it wouldn´t be OpenSCAD, it would bePython 3.
>> >
>> > Right now I´m trying to learn Python 3 and, because I have a lifelong
>> exec
>> > dysfuntion disorder, I struggle to get my head around it. I know not
>> why,
>> > but I figured out OpenSCAD basics in a few weeks. For my FDM andCNC
>> design
>> > work I might find myself stranded, oK, yes back compatibility, but
>> forhow
>> > long?
>> >
>> > Sure, OpenSCAD has quirks and limitations, but the language is the
>> product.
>> >
>> > Like I say, just my 2c.
>>
>> I'll add a penny to that 2c. I am apparently unable to wrap my head
>> around
>> Python. An OpenSCADAlike that requires me to do Python would definitely
>> be a non-starter for me.
>>
>>
>>
>>
>> _______________________________________________
>> 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
>
JP
Jérôme Plût
Thu, Nov 26, 2020 2:14 PM
Please if openscad shifts language base, don't use python, it sucks, JavaScript
Thanks for summing it up so nicely, and I fully agree with that;
though given the tendency to manipulate huge object trees, instead of
Javascript my personal choice would be some list-based language, e.g.
Julia, but that's about tastes and colors. For a very close example,
Lilypond (a music score program, with which I'm reasonably familiar)
uses Scheme as a scripting language, and it works quite well once you
are used to it.
The “ “ “ best ” ” ” (triples quotes intentional) way to move away
from OpenSCAD to another language (by which I mean, if this were
absolutely really really necessary, the reasonable choice) would be by
exposing an API (including at low level OpenCSG, GCAL, and at a higher
level the preview and customizer windows, etc.) around which the user
could program in anywhich language, including standard OpenSCAD.
On the other hand, the current OpenSCAD language, although definitely
not perfect, is quite a good start in its current form (there is some
impressive code out there, such as relativity.scad; and, as a recent
user, I am starting to have quite some fun with the language...). I
think that instead of moving languages, efforts would be best employed
to
-
iron out the most irritating bits of the language, which seems to
be already partly in the works (two “easy” examples, that I would
find extremely useful: passing functions around, and enabling
variadic functions/list unwrapping, possibly via an ellipsis
operator (which would also supersede the ugly “each”); there are
certainly other examples that I did not think of);
-
try to work out a “standard library” of basic functions and modules
(for another comparable, successful example, think of what LaTeX is
to TeX). E.g. most of us will have implemented at least a few basic
list operations (flatten(), sum() etc); linear algebra; conversion
between Euler angles and rotation matrices; etc. Since these are
perfectly possible in userland they should be distributed in
userland.
Point 2 might in turn require marginal tweaks to the basic language. A
concrete example is renaming modules; my own “standard library”, as a
lot of others likely do, defines an enhanced version of
linear_extrude, which is backwards-compatible, but yet I had to call
it lin_extrude. Also see how relativity.scad had to rename cube,
cylinder and sphere to box, rod and ball.
> Please if openscad shifts language base, don't use python, it sucks, JavaScript
Thanks for summing it up so nicely, and I fully agree with that;
though given the tendency to manipulate huge object trees, instead of
Javascript my personal choice would be some list-based language, e.g.
Julia, but that's about tastes and colors. For a very close example,
Lilypond (a music score program, with which I'm reasonably familiar)
uses Scheme as a scripting language, and it works quite well once you
are used to it.
The “ “ “ best ” ” ” (triples quotes intentional) way to move away
from OpenSCAD to another language (by which I mean, if this were
absolutely really really necessary, the reasonable choice) would be by
exposing an API (including at low level OpenCSG, GCAL, and at a higher
level the preview and customizer windows, etc.) around which the user
could program in anywhich language, including standard OpenSCAD.
On the other hand, the current OpenSCAD language, although definitely
not perfect, is quite a good start in its current form (there is some
impressive code out there, such as relativity.scad; and, as a recent
user, I am starting to have quite some fun with the language...). I
think that instead of moving languages, efforts would be best employed
to
1. iron out the most irritating bits of the language, which seems to
be already partly in the works (two “easy” examples, that I would
find extremely useful: passing functions around, and enabling
variadic functions/list unwrapping, possibly via an ellipsis
operator (which would also supersede the ugly “each”); there are
certainly other examples that I did not think of);
2. try to work out a “standard library” of basic functions and modules
(for another comparable, successful example, think of what LaTeX is
to TeX). E.g. most of us will have implemented at least a few basic
list operations (flatten(), sum() etc); linear algebra; conversion
between Euler angles and rotation matrices; etc. Since these are
perfectly possible in userland they should be distributed in
userland.
Point 2 might in turn require marginal tweaks to the basic language. A
concrete example is renaming modules; my own “standard library”, as a
lot of others likely do, defines an enhanced version of
linear_extrude, which is backwards-compatible, but yet I had to call
it lin_extrude. Also see how relativity.scad had to rename cube,
cylinder and sphere to box, rod and ball.
J
jon
Thu, Nov 26, 2020 2:48 PM
I don't mean to pick on any particular person, but the responses below
really tell the story. We are a relatively small community that is
geographically diverse and with diverse computer backgrounds. I would
add my personal language preference (Pascal or Modula II), but why go
on? There is no single language that would gain majority support within
our ranks.
It is clear that there are many external efforts to "do OpenSCAD right",
so if others want to add to the list, they should do so. There have been
recent testimonials about how challenging that can be.
The rest of us need to focus on how to improve OpenSCAD. One way to do
this would be to come together to create a short list of important
changes, and then provide funding or programming effort for those changes.
There may not be very many libraries available for OpenSCAD, but there
are more than enough to make my head spin. Many of them are very
powerful. Should we ask OpenSCAD to do everything we want, or OpenSCAD
plus a library to do everything we want? I believe that the latter is
the important issue. No other language survives (is popular) without
its libraries.
I find the language comparisons to be entertaining but not productive,
if what we really want is a more powerful and more effective OpenSCAD.
I have recently started using Carsten's AngelCAD, which now can accept
OpenSCAD files. I can develop with OpenSCAD (for the most part) but
when OpenSCAD falls on its face (either in terms of crashing or taking
too much time to complete a calculation), I can turn to AngelCAD to get
the job done. Perhaps we can separate the language from the efficiency
of calculating STL files.
Jon
On 11/26/2020 9:14 AM, Jérôme Plût wrote:
Please if openscad shifts language base, don't use python, it sucks, JavaScript
Thanks for summing it up so nicely, and I fully agree with that;
though given the tendency to manipulate huge object trees, instead of
Javascript my personal choice would be some list-based language, e.g.
Julia, but that's about tastes and colors. For a very close example,
Lilypond (a music score program, with which I'm reasonably familiar)
uses Scheme as a scripting language, and it works quite well once you
are used to it.
http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
I don't mean to pick on any particular person, but the responses below
really tell the story. We are a relatively small community that is
geographically diverse and with diverse computer backgrounds. I would
add my personal language preference (Pascal or Modula II), but why go
on? There is no single language that would gain majority support within
our ranks.
It is clear that there are many external efforts to "do OpenSCAD right",
so if others want to add to the list, they should do so. There have been
recent testimonials about how challenging that can be.
The rest of us need to focus on how to improve OpenSCAD. One way to do
this would be to come together to create a short list of important
changes, and then provide funding or programming effort for those changes.
There may not be very many libraries available for OpenSCAD, but there
are more than enough to make my head spin. Many of them are very
powerful. Should we ask OpenSCAD to do everything we want, or OpenSCAD
plus a library to do everything we want? I believe that the latter is
the important issue. No other language survives (is popular) without
its libraries.
I find the language comparisons to be entertaining but not productive,
if what we really want is a more powerful and more effective OpenSCAD.
I have recently started using Carsten's AngelCAD, which now can accept
OpenSCAD files. I can develop with OpenSCAD (for the most part) but
when OpenSCAD falls on its face (either in terms of crashing or taking
too much time to complete a calculation), I can turn to AngelCAD to get
the job done. Perhaps we can separate the language from the efficiency
of calculating STL files.
Jon
On 11/26/2020 9:14 AM, Jérôme Plût wrote:
>> Please if openscad shifts language base, don't use python, it sucks, JavaScript
> Thanks for summing it up so nicely, and I fully agree with that;
> though given the tendency to manipulate huge object trees, instead of
> Javascript my personal choice would be some list-based language, e.g.
> Julia, but that's about tastes and colors. For a very close example,
> Lilypond (a music score program, with which I'm reasonably familiar)
> uses Scheme as a scripting language, and it works quite well once you
> are used to it.
>
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
TH
Tim Hawkins
Thu, Dec 3, 2020 9:00 PM
There is an openscad plugin for InteliJ (which has a community version)
that does full language parsing, colourisation, intellisense and does file
and block re-formatting,. Which uses openscad to do preview and stl output.
It also has full support for git, which find incredibly confident. I don't
use the openscad app much any more as a result. The only pain is
remembering to close the preview in the copy of openscad instead of just
switching back to the editor, of you end up spawning lots of copies of scad
without realizing it.
It would be cool if it could track the active pid and repeat updates on
that instance so you can have intellij on one screen and openscad on the
other. But that will probaly come.
https://plugins.jetbrains.com/plugin/11198-openscad-language-support
On Wed, Nov 25, 2020, 14:18 Revar Desmera revarbat@gmail.com wrote:
That’d not a bad idea. Has anyone’s BetterSCAD project integrated with
Eclipse or Atom with a preview window?
In my experience, the biggest failing of almost other projects is this
space is extremely simple? they expect you to run it from a command-line.
This is a non-starter for 95% of users on Windows, and far less than
optimal on OS X. It needs to have an GUI application you can download and
run without going to cmd.exe or Terminal.app. Another frequent flailing is
that documentation is often an afterthought.
I'm still of the opinion that you get a LOT of capability for free if
you write a language parser for Eclipse.
It has all the editor features you can want, just needs to know the
--
Bobcats and Cougars, oh my!
There is an openscad plugin for InteliJ (which has a community version)
that does full language parsing, colourisation, intellisense and does file
and block re-formatting,. Which uses openscad to do preview and stl output.
It also has full support for git, which find incredibly confident. I don't
use the openscad app much any more as a result. The only pain is
remembering to close the preview in the copy of openscad instead of just
switching back to the editor, of you end up spawning lots of copies of scad
without realizing it.
It would be cool if it could track the active pid and repeat updates on
that instance so you can have intellij on one screen and openscad on the
other. But that will probaly come.
https://plugins.jetbrains.com/plugin/11198-openscad-language-support
On Wed, Nov 25, 2020, 14:18 Revar Desmera <revarbat@gmail.com> wrote:
> That’d not a bad idea. Has anyone’s BetterSCAD project integrated with
> Eclipse or Atom with a preview window?
>
> - Revar
>
>
> > On Nov 24, 2020, at 9:42 PM, John Lussmyer <Cougar@CasaDelGato.com>
> wrote:
> >
> > On Tue Nov 24 21:34:14 PST 2020 revarbat@gmail.com said:
> >> In my experience, the biggest failing of almost other projects is this
> space is extremely simple? they expect you to run it from a command-line.
> This is a non-starter for 95% of users on Windows, and far less than
> optimal on OS X. It needs to have an GUI application you can download and
> run without going to cmd.exe or Terminal.app. Another frequent flailing is
> that documentation is often an afterthought.
> >
> > I'm still of the opinion that you get a LOT of capability for free if
> you write a language parser for Eclipse.
> > It has all the editor features you can want, just needs to know the
> syntax of the language.
> >
> >
> > --
> >
> > Bobcats and Cougars, oh my!
> http://john.casadelgato.com/Pets_______________________________________________
> > 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
>
CN
Csaba Nagy
Fri, Dec 4, 2020 12:11 AM
While I was the one to start that IntelliJ plugin, I didn't touch it
for a long time, development and maintenance was taken over by Lucien
Denisey who does a good job on it. Thanks Lucien :-)
On Linux I have the following python method to achieve detecting an
already running Openscad window with a specific file:
def open_scad_once(scad_file):
"""
Opens the given file in openscad, if not already open.
:param scad_file: the file to be opened in OpenSCAD
"""
processes = [
pid for pid in os.listdir("/proc")
if (
pid.isdigit()
and read_content("/proc/%s/cmdline" %
pid).strip("\0").split("\0") == [
"openscad", scad_file
]
)
]
if len(processes) == 0:
os.system("openscad %s &" % scad_file)
I use this function from PyCharm to open scad files generated by
SolidPython scripts, so far it works well for me.
While it is python and the IntelliJ plugin is Java, I guess it gives a
hint on how it can be done on linux - Mac could be relatively similar,
Windows is a different beast though and I have no idea how it would
work.
Cheers,
Csaba
On Fri, 2020-12-04 at 05:00 +0800, Tim Hawkins wrote:
There is an openscad plugin for InteliJ (which has a community
version) that does full language parsing, colourisation, intellisense
and does file and block re-formatting,. Which uses openscad to do
preview and stl output. It also has full support for git, which find
incredibly confident. I don't use the openscad app much any more as a
result. The only pain is remembering to close the preview in the
copy of openscad instead of just switching back to the editor, of you
end up spawning lots of copies of scad without realizing it.
It would be cool if it could track the active pid and repeat updates
on that instance so you can have intellij on one screen and openscad
on the other. But that will probaly come.
https://plugins.jetbrains.com/plugin/11198-openscad-language-support
On Wed, Nov 25, 2020, 14:18 Revar Desmera revarbat@gmail.com wrote:
That’d not a bad idea. Has anyone’s BetterSCAD project integrated
with Eclipse or Atom with a preview window?
On Nov 24, 2020, at 9:42 PM, John Lussmyer <
In my experience, the biggest failing of almost other projects
is this space is extremely simple? they expect you to run it from a
command-line. This is a non-starter for 95% of users on Windows,
and far less than optimal on OS X. It needs to have an GUI
application you can download and run without going to cmd.exe or
Terminal.app. Another frequent flailing is that documentation is
often an afterthought.
I'm still of the opinion that you get a LOT of capability for
free if you write a language parser for Eclipse.
It has all the editor features you can want, just needs to know
the syntax of the language.
--
Bobcats and Cougars, oh my!
While I was the one to start that IntelliJ plugin, I didn't touch it
for a long time, development and maintenance was taken over by Lucien
Denisey who does a good job on it. Thanks Lucien :-)
On Linux I have the following python method to achieve detecting an
already running Openscad window with a specific file:
def open_scad_once(scad_file):
"""
Opens the given file in openscad, if not already open.
:param scad_file: the file to be opened in OpenSCAD
"""
processes = [
pid for pid in os.listdir("/proc")
if (
pid.isdigit()
and read_content("/proc/%s/cmdline" %
pid).strip("\0").split("\0") == [
"openscad", scad_file
]
)
]
if len(processes) == 0:
os.system("openscad %s &" % scad_file)
I use this function from PyCharm to open scad files generated by
SolidPython scripts, so far it works well for me.
While it is python and the IntelliJ plugin is Java, I guess it gives a
hint on how it can be done on linux - Mac could be relatively similar,
Windows is a different beast though and I have no idea how it would
work.
Cheers,
Csaba
On Fri, 2020-12-04 at 05:00 +0800, Tim Hawkins wrote:
> There is an openscad plugin for InteliJ (which has a community
> version) that does full language parsing, colourisation, intellisense
> and does file and block re-formatting,. Which uses openscad to do
> preview and stl output. It also has full support for git, which find
> incredibly confident. I don't use the openscad app much any more as a
> result. The only pain is remembering to close the preview in the
> copy of openscad instead of just switching back to the editor, of you
> end up spawning lots of copies of scad without realizing it.
>
> It would be cool if it could track the active pid and repeat updates
> on that instance so you can have intellij on one screen and openscad
> on the other. But that will probaly come.
>
> https://plugins.jetbrains.com/plugin/11198-openscad-language-support
>
>
> On Wed, Nov 25, 2020, 14:18 Revar Desmera <revarbat@gmail.com> wrote:
> > That’d not a bad idea. Has anyone’s BetterSCAD project integrated
> > with Eclipse or Atom with a preview window?
> >
> > - Revar
> >
> >
> > > On Nov 24, 2020, at 9:42 PM, John Lussmyer <
> > Cougar@CasaDelGato.com> wrote:
> > >
> > > On Tue Nov 24 21:34:14 PST 2020 revarbat@gmail.com said:
> > >> In my experience, the biggest failing of almost other projects
> > is this space is extremely simple? they expect you to run it from a
> > command-line. This is a non-starter for 95% of users on Windows,
> > and far less than optimal on OS X. It needs to have an GUI
> > application you can download and run without going to cmd.exe or
> > Terminal.app. Another frequent flailing is that documentation is
> > often an afterthought.
> > >
> > > I'm still of the opinion that you get a LOT of capability for
> > free if you write a language parser for Eclipse.
> > > It has all the editor features you can want, just needs to know
> > the syntax of the language.
> > >
> > >
> > > --
> > >
> > > Bobcats and Cougars, oh my!
> > http://john.casadelgato.com/Pets_______________________________________________
> > > 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
>
> _______________________________________________
> OpenSCAD mailing list
> Discuss@lists.openscad.org
> http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org
TH
Tim Hawkins
Sat, Dec 5, 2020 2:11 AM
While I was the one to start that IntelliJ plugin, I didn't touch it
for a long time, development and maintenance was taken over by Lucien
Denisey who does a good job on it. Thanks Lucien :-)
On Linux I have the following python method to achieve detecting an
already running Openscad window with a specific file:
def open_scad_once(scad_file):
"""
Opens the given file in openscad, if not already open.
:param scad_file: the file to be opened in OpenSCAD
"""
processes = [
pid for pid in os.listdir("/proc")
if (
pid.isdigit()
and read_content("/proc/%s/cmdline" %
pid).strip("\0").split("\0") == [
"openscad", scad_file
]
)
]
if len(processes) == 0:
os.system("openscad %s &" % scad_file)
I use this function from PyCharm to open scad files generated by
SolidPython scripts, so far it works well for me.
While it is python and the IntelliJ plugin is Java, I guess it gives a
hint on how it can be done on linux - Mac could be relatively similar,
Windows is a different beast though and I have no idea how it would
work.
Cheers,
Csaba
On Fri, 2020-12-04 at 05:00 +0800, Tim Hawkins wrote:
There is an openscad plugin for InteliJ (which has a community
version) that does full language parsing, colourisation, intellisense
and does file and block re-formatting,. Which uses openscad to do
preview and stl output. It also has full support for git, which find
incredibly confident. I don't use the openscad app much any more as a
result. The only pain is remembering to close the preview in the
copy of openscad instead of just switching back to the editor, of you
end up spawning lots of copies of scad without realizing it.
It would be cool if it could track the active pid and repeat updates
on that instance so you can have intellij on one screen and openscad
on the other. But that will probaly come.
https://plugins.jetbrains.com/plugin/11198-openscad-language-support
On Wed, Nov 25, 2020, 14:18 Revar Desmera revarbat@gmail.com wrote:
That’d not a bad idea. Has anyone’s BetterSCAD project integrated
with Eclipse or Atom with a preview window?
On Nov 24, 2020, at 9:42 PM, John Lussmyer <
In my experience, the biggest failing of almost other projects
is this space is extremely simple? they expect you to run it from a
command-line. This is a non-starter for 95% of users on Windows,
and far less than optimal on OS X. It needs to have an GUI
application you can download and run without going to cmd.exe or
Terminal.app. Another frequent flailing is that documentation is
often an afterthought.
I'm still of the opinion that you get a LOT of capability for
free if you write a language parser for Eclipse.
It has all the editor features you can want, just needs to know
the syntax of the language.
--
Bobcats and Cougars, oh my!
Cool, I'm a Linux man aswell
On Fri, Dec 4, 2020, 08:12 Csaba Nagy <ncsaba@javampire.com> wrote:
> While I was the one to start that IntelliJ plugin, I didn't touch it
> for a long time, development and maintenance was taken over by Lucien
> Denisey who does a good job on it. Thanks Lucien :-)
>
> On Linux I have the following python method to achieve detecting an
> already running Openscad window with a specific file:
>
> def open_scad_once(scad_file):
> """
> Opens the given file in openscad, if not already open.
> :param scad_file: the file to be opened in OpenSCAD
> """
> processes = [
> pid for pid in os.listdir("/proc")
> if (
> pid.isdigit()
> and read_content("/proc/%s/cmdline" %
> pid).strip("\0").split("\0") == [
> "openscad", scad_file
> ]
> )
> ]
> if len(processes) == 0:
> os.system("openscad %s &" % scad_file)
>
> I use this function from PyCharm to open scad files generated by
> SolidPython scripts, so far it works well for me.
>
> While it is python and the IntelliJ plugin is Java, I guess it gives a
> hint on how it can be done on linux - Mac could be relatively similar,
> Windows is a different beast though and I have no idea how it would
> work.
>
> Cheers,
> Csaba
>
>
> On Fri, 2020-12-04 at 05:00 +0800, Tim Hawkins wrote:
> > There is an openscad plugin for InteliJ (which has a community
> > version) that does full language parsing, colourisation, intellisense
> > and does file and block re-formatting,. Which uses openscad to do
> > preview and stl output. It also has full support for git, which find
> > incredibly confident. I don't use the openscad app much any more as a
> > result. The only pain is remembering to close the preview in the
> > copy of openscad instead of just switching back to the editor, of you
> > end up spawning lots of copies of scad without realizing it.
> >
> > It would be cool if it could track the active pid and repeat updates
> > on that instance so you can have intellij on one screen and openscad
> > on the other. But that will probaly come.
> >
> > https://plugins.jetbrains.com/plugin/11198-openscad-language-support
> >
> >
> > On Wed, Nov 25, 2020, 14:18 Revar Desmera <revarbat@gmail.com> wrote:
> > > That’d not a bad idea. Has anyone’s BetterSCAD project integrated
> > > with Eclipse or Atom with a preview window?
> > >
> > > - Revar
> > >
> > >
> > > > On Nov 24, 2020, at 9:42 PM, John Lussmyer <
> > > Cougar@CasaDelGato.com> wrote:
> > > >
> > > > On Tue Nov 24 21:34:14 PST 2020 revarbat@gmail.com said:
> > > >> In my experience, the biggest failing of almost other projects
> > > is this space is extremely simple? they expect you to run it from a
> > > command-line. This is a non-starter for 95% of users on Windows,
> > > and far less than optimal on OS X. It needs to have an GUI
> > > application you can download and run without going to cmd.exe or
> > > Terminal.app. Another frequent flailing is that documentation is
> > > often an afterthought.
> > > >
> > > > I'm still of the opinion that you get a LOT of capability for
> > > free if you write a language parser for Eclipse.
> > > > It has all the editor features you can want, just needs to know
> > > the syntax of the language.
> > > >
> > > >
> > > > --
> > > >
> > > > Bobcats and Cougars, oh my!
> > >
> http://john.casadelgato.com/Pets_______________________________________________
> > > > 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
> >
> > _______________________________________________
> > 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
>