> P.S.  A NetBeans option to make whitespace visible so we can see when 
> spaces/tabs are not used consistently would be nice.

Offtopic, but such an editor flag does exist (I forgot the name). I
remember playing with it long ago. There's no UI for it though.

--emi

On Wed, Dec 11, 2019 at 10:26 PM Scott Palmer <[email protected]> wrote:
>
> Re #1: I will dash your hopes. :-)
>
> I’ve been thinking about writing a plugin to manage indentation, because so 
> far nothing I’ve seen does it right.
>
> I prefer tabs for indentation. Why? because I don’t want it to be possible to 
> have the cursor anywhere but a valid indent level prior to the actual code on 
> the line. I want to be able to set the tab width to what I like and have 
> everyone else’s code adapt, without modifying the file content.  When spaces 
> are used to indent, that doesn’t work.
>
> Tabs must only be the first characters on the line. After the first non-tab 
> there can never be another tab on the line.  This rule ensures that it is 
> possible to change the tab width to any positive integer and not screw up any 
> intentional alignment.
>
> I want to use spaces after the tabs for alignment purposes, e.g lining up 
> parameters so they appear after the ‘(‘ if a method call needs to split lines.
>
>         method(a ,b
>                c ,d);
>         <tab to here, spaces to align ‘c’ with ‘a'
>
>         int one   = 1;
>         int three = 3;
>         int five  = 5
>                   <always spaces to align after indent level
>
> I want code formatting to respect intentional extra spaces for alignment.
>
> I could tolerate spaces if they weren’t so painful for navigation. I want 
> everything treated as a tab up to the indent level (based on the program 
> structure).
>
> Maybe an advanced plugin could keep track of indent level separately so the 
> editor behaved as if tabs were used to indent, but was smart about what was 
> detected as the indent width in the file when it was loaded. IT could treat 
> indenting as if it were done with tabs.  When saving it would know that the 
> file used spaces and it knows how many spaces were used to indent one level 
> so keeps that number of spaces when the file is saved, regardless of what my 
> preferred tab width is for viewing/editing.
>
> If spaces are found before tabs on the same line, the plugin could use 
> version control to find who last committed the file, track them down on 
> social media, and send a firing squad to their house ;-)
>
>
> Scott
>
>
> P.S.  A NetBeans option to make whitespace visible so we can see when 
> spaces/tabs are not used consistently would be nice.
>
> > On Dec 10, 2019, at 2:08 PM, Laszlo Kishalmi <[email protected]> 
> > wrote:
> >
> > Well I'd:
> >
> > 1. convert tab to spaces (however I hope no one using tabs by now)
> > 2. Create a histogram from the leading spaces
> > 3. Start some division test.
> >     Let say we test with indent: IND
> >     for each all leading space number in the histogram with IND then 
> > multiple the remainder with the number of lines which that leading space is 
> > used that would be DEV
> >     summarize of these DEV values (deviations)
> >
> > The deviation for IND=1 shall be 0. Start to increase IND, the largest 
> > number while IND is 0 the indent of the file.
> >
> > For miss formatted files you might allow a threshold somewhat above 0 as 
> > well. This threshold could be a function of the number of lines in the file.
> >
> > On 12/10/19 10:50 AM, Emilian Bold wrote:
> >> Well, this is some original idea! If somebody needs help with such a
> >> thing, I would do it just to learn.
> >>
> >> But honestly for an existing file I believe you could detect the
> >> indentation style just looking at the AST. Heuristics would work imho.
> >> But, of course, a neural network would be the cool way of solving it.
> >>
> >> --emi
> >>
> >> On Tue, Dec 10, 2019 at 8:44 PM Siddhesh Rane <[email protected]> 
> >> wrote:
> >>> Glad to see someone interested in this feature.
> >>> A long time ago I came across a blog post[1] by Andrej Karpathy (AI guru) 
> >>> in which a neural network was trained on variety of text datasets and 
> >>> then used as a content generator. When trained on Linux and Apache source 
> >>> code, the generator could reproduce pseudo code, that was not valid code, 
> >>> but was very well formatted. It was quite cool to see the network had 
> >>> learned several things, indentation being one of them. Do check out the 
> >>> Source Code section of the blog to know what I am talking about.
> >>>
> >>> The most straightforward way I see to do this is some frequency model of 
> >>> a predefined set of indentation rules.
> >>> But if anyone is interested to create a small fast neural network with 
> >>> limited features, it would be great to see the possibilities.
> >>>
> >>> +1 for this.
> >>>
> >>> Regards
> >>> Siddhesh
> >>>
> >>> [1] http://karpathy.github.io/2015/05/21/rnn-effectiveness/
> >>>
> >>> December 10, 2019 11:16 PM, "Alvin Thompson" <[email protected]> 
> >>> wrote:
> >>>
> >>>> Hi,
> >>>>
> >>>> Assuming that this email doesn't get flagged as spam due to the subject 
> >>>> line, this is just a
> >>>> reminder that I have a bounty for anyone who creates a NetBeans plugin 
> >>>> that detects and uses the
> >>>> existing indentation of the file being edited. For any indentation info 
> >>>> that can not be gleaned
> >>>> from the file, it should fall back to the preferences. This really is an 
> >>>> absolute must team work
> >>>> these days.
> >>>>
> >>>> You get $100 for coming up with the plugin, and another $100 if it gets 
> >>>> donated and makes it into
> >>>> NetBeans itself. But I imagine most people will want to do this so that 
> >>>> I have a slightly higher
> >>>> opinion of them.
> >>>>
> >>>> I would do this myself but I am very, very lazy.
> >>>>
> >>>> That is all,
> >>>> Alvin
> >>>>
> >>>> ---------------------------------------------------------------------
> >>>> To unsubscribe, e-mail: [email protected]
> >>>> For additional commands, e-mail: [email protected]
> >>>>
> >>>> For further information about the NetBeans mailing lists, visit:
> >>>> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
> >>> ---------------------------------------------------------------------
> >>> To unsubscribe, e-mail: [email protected]
> >>> For additional commands, e-mail: [email protected]
> >>>
> >>> For further information about the NetBeans mailing lists, visit:
> >>> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
> >>>
> >>>
> >>>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [email protected]
> >> For additional commands, e-mail: [email protected]
> >>
> >> For further information about the NetBeans mailing lists, visit:
> >> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
> >>
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [email protected]
> > For additional commands, e-mail: [email protected]
> >
> > For further information about the NetBeans mailing lists, visit:
> > https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
> >
> >
> >
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
> For further information about the NetBeans mailing lists, visit:
> https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists



Reply via email to