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



Reply via email to