Aha -- atom-beautify does seem to work!

Excellent.

This will lead me to consider Atom further.

Would you recommend it for editing only, or also for REPLs etc? I just 
tried proto-repl but this leads to errors and confusion. Still, if it works 
well as just an editor then perhaps I could pair it with a CLI-based REPL 
and the overall setup experience and usability will be okay overall.

Thanks!

 -Lee

On Monday, August 27, 2018 at 4:00:34 PM UTC-4, Nando Breiter wrote:
>
> Lee, 
>
> Perhaps https://atom.io/packages/atom-beautify will do what you want. 
>
> With Parinfer disabled, I can select and shift-tab all code to the left 
> margin, removing all indentation. Then when I run Atom Beautify on the 
> file, all indentation is restored. 
>
>
>
> Aria Media Sagl
> +41 (0)76 303 4477 cell
> skype: ariamedia
>
> On Mon, Aug 27, 2018 at 9:18 PM, 'Lee' via Clojure <
> clo...@googlegroups.com <javascript:>> wrote:
>
>>
>> Ah -- thank you! 
>>
>> Now I can re-indent in Cursive, although it doesn't do the right thing 
>> after defn, etc. What do Cursive users do to get standard indentation?
>>
>> Playing a bit more I see some other with basic editing, even in 
>> "Structural Off" mode. Like if you type "(defn foo" and hit return, then 
>> foo changes into some strange autocompleted symbol. Shift-return avoids 
>> this, but the idea is to let people use their pre-existing typing skills. 
>> It also won't let you delete to the left of the indentation point (it jumps 
>> you up to the previous line), etc. I'm not sure how problematic these 
>> issues would be.
>>
>>
>>
>> On Monday, August 27, 2018 at 3:01:37 PM UTC-4, ri...@chartbeat.com 
>> wrote:
>>>
>>> It’s under one of the code or refactor menus, you can auto-format or 
>>> auto-indent.
>>>
>>> On Aug 27, 2018, at 11:30 AM, 'Lee' via Clojure <clo...@googlegroups.com> 
>>> wrote:
>>>
>>>
>>> Probably true that my requirements are a bigger challenge for 
>>> multi-language IDEs. I thought Eclipse/Counterclockwise did a reasonable 
>>> job of it back when that was an active project, but it was a bit rough too, 
>>> since there was a lot of incidental and distracting complexity in dealing 
>>> with Eclipse in general.
>>>
>>> I did see the "off" setting for parinfer/paredit in Cursive, but it's 
>>> not really "off" in the sense of behaving like a normal text editor, and I 
>>> don't see re-indentation anywhere. FWIW since this is for teaching I'm not 
>>> really interested in customization, just reasonable behavior out of the box.
>>>
>>>
>>> On Monday, August 27, 2018 at 11:21:47 AM UTC-4, Rick Mangi wrote:
>>>>
>>>> Yeah, I actually just create projects with lein. If you right click on 
>>>> a project.clj you can just fire up a repl via lein and it works really 
>>>> well. There's 3 choices for parenthesis, there's again a little button on 
>>>> the bottom right to switch between parinfer/paredit and off. You can 
>>>> customize all of the code reformatting and you can even alias things like 
>>>> defnp and other macros to evaluate correctly. 
>>>>
>>>> That said, a tool that supports dozens of languages isn't going to do 
>>>> any of them particularly easily :)
>>>>
>>>>
>>>>
>>>> On Mon, Aug 27, 2018 at 11:18 AM 'Lee' via Clojure <
>>>> clo...@googlegroups.com> wrote:
>>>>
>>>>> Thanks Rick. 
>>>>>
>>>>> Just tried Cursive again but it still seems to fail pretty badly on 
>>>>> newbie setup and usability, which is what has hung me up in the past. 
>>>>>
>>>>> tldr: A half hour or so after a fresh install and going through the 
>>>>> Getting Started instructions I still don't have a REPL (confused about 
>>>>> Run 
>>>>> Configurations and what I'm seeing doesn't match the website pics), and 
>>>>> although I can edit code in an existing project with drag and drop (can't 
>>>>> yet create a project with a core.clj), even the "Structural Off" editing 
>>>>> mode behaves oddly and doesn't appear to support structure-aware 
>>>>> re-indentation (again, unless I'm missing it). And the indentation that 
>>>>> it 
>>>>> prefers after a newline appears to be non-standard (e.g. after "(defn 
>>>>> foo").
>>>>>
>>>>> I follow the Cursive mailing list and I know that a lot of people find 
>>>>> it to be a wonderful tool, but I don't think it meets my requirements.
>>>>>
>>>>>  -Lee
>>>>>
>>>>>
>>>>> On Monday, August 27, 2018 at 10:43:36 AM UTC-4, Rick Mangi wrote:
>>>>>>
>>>>>> I find intellij + cursive to be pretty darn easy to use, and the repl 
>>>>>> has an option to turn off parinfer. That said, I'm not a beginner. The 
>>>>>> only 
>>>>>> drawback that I can think of other than price is that the clojure 
>>>>>> functionality is mostly put under a single menu and it's sometimes 
>>>>>> awkward 
>>>>>> to navigate to subcommands.
>>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, Aug 27, 2018 at 9:48 AM Alex Miller <al...@puredanger.com> 
>>>>>> wrote:
>>>>>>
>>>>>>> I think Atom and VSCode are probably the two additional ones you 
>>>>>>> might want to look into?
>>>>>>>
>>>>>>> On Monday, August 27, 2018 at 8:45:34 AM UTC-5, Lee wrote:
>>>>>>>>
>>>>>>>> This is my roughly-annual check-in to see if there are new good 
>>>>>>>> editing/execution options for me to use in my Clojure teaching and 
>>>>>>>> coding.
>>>>>>>>
>>>>>>>> My requirements are:
>>>>>>>>
>>>>>>>> - Simple installation/setup, even for new programmers, on 
>>>>>>>> Mac/Win/Linux
>>>>>>>>
>>>>>>>> - Usable by new programmers without significant training or 
>>>>>>>> learning curve
>>>>>>>>
>>>>>>>> - Syntax-aware re-indentation
>>>>>>>>
>>>>>>>> - Visual indication of matching brackets (e.g. matching bracket 
>>>>>>>> highlighted, or rainbow brackets, etc.)
>>>>>>>>
>>>>>>>> - No required use of paredit or parinfer
>>>>>>>>
>>>>>>>> Bells and whistles that would help but aren't as critical as the 
>>>>>>>> requirements listed above:
>>>>>>>>
>>>>>>>> - Access to argument lists, documentation, and symbol completion 
>>>>>>>> while typing
>>>>>>>>
>>>>>>>> - Integrated REPL, although a command-line REPL paired with an 
>>>>>>>> editor that met the requirements above would work
>>>>>>>>
>>>>>>>> I would be interested in solutions that work for Clojure and 
>>>>>>>> Clojurescript, or just Clojure, or just Clojurescript.
>>>>>>>>
>>>>>>>> Recent developments of which I'm aware but fall short of my 
>>>>>>>> requirements:
>>>>>>>>
>>>>>>>> - Nightcode and Lightmod, which would be fabulous if not for the 
>>>>>>>> required use of parinfer
>>>>>>>>
>>>>>>>> - Jupyter-based approaches, which also seem great except I see none 
>>>>>>>> with syntax-aware re-indentation for Clojure
>>>>>>>>
>>>>>>>> FYI what I'm currently using is a combination of Gorilla REPL and 
>>>>>>>> leiningen at the command line. This is quite nice although 
>>>>>>>> installation/setup is not as easy or foolproof as I would like (I've 
>>>>>>>> had 
>>>>>>>> students who tried and failed to get it working on their Windows 
>>>>>>>> laptops 
>>>>>>>> for an entire semester, messing with Java versions etc.), Gorilla REPL 
>>>>>>>> is 
>>>>>>>> not very actively maintained, and the requirement to do some things at 
>>>>>>>> the 
>>>>>>>> command line isn't ideal.
>>>>>>>>
>>>>>>>> Options I've used in the past, which more-or-less met my 
>>>>>>>> requirements but are no longer viable, include Clooj, Nightcode (old 
>>>>>>>> versions, before parinfer), and Counterclockwise.
>>>>>>>>
>>>>>>>> I also try to keep an eye on "high-end" IDEs like Emacs and 
>>>>>>>> Cursive, but so far haven't found any that really meet my requirements 
>>>>>>>> for 
>>>>>>>> simple installation/setup and usability for beginners.
>>>>>>>>
>>>>>>>> Any pointers would be very much appreciated!
>>>>>>>>
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>>  -Lee
>>>>>>>>
>>>>>>>> --
>>>>>>>> Lee Spector, Professor of Computer Science
>>>>>>>> Director, Institute for Computational Intelligence
>>>>>>>> Hampshire College, Amherst, Massachusetts, 01002, USA
>>>>>>>> lspe...@hampshire.edu, http://hampshire.edu/lspector/, 413-559-5352
>>>>>>>>
>>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "Clojure" group.
>>>>>>> To post to this group, send email to clo...@googlegroups.com
>>>>>>> Note that posts from new members are moderated - please be patient 
>>>>>>> with your first post.
>>>>>>> To unsubscribe from this group, send email to
>>>>>>> clojure+u...@googlegroups.com
>>>>>>> For more options, visit this group at
>>>>>>> http://groups.google.com/group/clojure?hl=en
>>>>>>> --- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "Clojure" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>> send an email to clojure+u...@googlegroups.com.
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>> -- 
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "Clojure" group.
>>>>> To post to this group, send email to clo...@googlegroups.com
>>>>> Note that posts from new members are moderated - please be patient 
>>>>> with your first post.
>>>>> To unsubscribe from this group, send email to
>>>>> clojure+u...@googlegroups.com
>>>>> For more options, visit this group at
>>>>> http://groups.google.com/group/clojure?hl=en
>>>>> --- 
>>>>> You received this message because you are subscribed to the Google 
>>>>> Groups "Clojure" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>> an email to clojure+u...@googlegroups.com.
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>> -- 
>>> You received this message because you are subscribed to the Google
>>> Groups "Clojure" group.
>>> To post to this group, send email to clo...@googlegroups.com
>>> Note that posts from new members are moderated - please be patient with 
>>> your first post.
>>> To unsubscribe from this group, send email to
>>> clojure+u...@googlegroups.com
>>> For more options, visit this group at
>>> http://groups.google.com/group/clojure?hl=en
>>> --- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Clojure" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to clojure+u...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clo...@googlegroups.com 
>> <javascript:>
>> Note that posts from new members are moderated - please be patient with 
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+u...@googlegroups.com <javascript:>
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+u...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to