<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
I haven't been following all of the details of the whole
conversation, but I just wanted to throw in my two cents:<br>
<br>
I like how geany already keeps the indentation of the previous line
and unindents with a single backspace independent of if the file is
using tabs or spaces.<br>
<br>
Any custom formatting-as-you-go I hope is only enable-able, perhaps
that's why it would be best suited as a plugin. Weather that plugin
is in the core plugins or geany-plugins doesn't matter to me. One
of the reasons I like geany is because its editing consistently
across the different languages. I don't particularly like tools
that automatically fix indentation as I type on curly braces or
whatever.<br>
<br>
Also, most IDEs and editors can fit into two groups: full feature
that can be stripped down, simple with enable-able features. I
think of geany as the latter. I much prefer enabling plugins and
features as I learn them or want them, rather than having more
things pre-enabled as Lex suggests below.<br>
<br>
Anyway, that's just my food for thought.<br>
<br>
Thanks,<br>
<br>
Steve<br>
<br>
<div class="moz-cite-prefix">On 07/17/2013 02:01 AM, Lex Trotman
wrote:<br>
</div>
<blockquote
cite="mid:CAKhWKDNcCuBeXd-KeGRgc05uiF2y1qNoE_oVoXe=GqV6e7owRw@mail.gmail.com"
type="cite">
<div dir="ltr"><br>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">On 17 July 2013 16:53, Thomas Martitz
<span dir="ltr"><<a moz-do-not-send="true"
href="mailto:thomas.martitz@student.htw-berlin.de"
target="_blank">thomas.martitz@student.htw-berlin.de</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">Am
17.07.2013 00:49, schrieb Thrawn:
<div class="im"><br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
Thomas Martitz wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
Bah, this "everything must be a plugin" really
annoys me...<br>
What's wrong with you accepting new code in the
core?<br>
</blockquote>
Actually, I agree that custom indentation schemes are
too troublesome to include in core...<br>
unless someone, somehow, has a spark of genius
allowing them to invent a perfect<br>
one-scheme-fits-all approach. This idea - particularly
the Lua script - is far from that.<br>
<br>
</blockquote>
<br>
</div>
I didn't mean to suggest there is a one-scheme-fits-all
solution. The core can totally have customizations to a
generic algorithm (or even custom algorithms) on a
per-language basis. What I question is the enforcement (I
perceive it as such) to introduce all new functionality
via (perhaps unreliable) plugins even if essential core
features (indentation is clearly one of them) are
concerned. There seems little, if any, consideration
whether new stuff should go into the core or plugins. The
plugin approach is the default and it seems hard to
improve the core.</blockquote>
<div><br>
</div>
<div>Hi Thomas,</div>
<div><br>
</div>
<div>There are two questions:</div>
<div><br>
</div>
<div>1. Should a general solution to language specific
indentation go in core, most definitely yes, when we know
what that is !!! </div>
<div><br>
</div>
<div>So far such a solution has not been found, Colomban's
regex prototype was closest but still had a high
proportion of incorrect results leading to the conclusion
that the approach was not capable enough.</div>
<div>Implementing a bad approach in core and then having to
try to fix/expand or replace it is just a waste of time. </div>
<div><br>
</div>
<div>So as I said trying out indentation schemes in plugins
makes it easier to replace them (but the user can always
still use the old one if they like it better, they can't
do that with in-core code that has been removed). There
is a PR that demonstrates that plugins can be autoloaded
by filetypes, so each plugin only needs to do one
language, making them simpler and easier to get right.</div>
<div><br>
</div>
<div>Then it will be possible to identify commonality that
is suitable for implementing in core.</div>
<div><br>
</div>
<div>2. Should this particular function Thrawn is offering
be in core? Since it is limited to one situation in one
language (or group of {} languages) and he wants to
implement it in Lua, no.</div>
<div> </div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Plugins are nice, but still not ideal. The authors might
not be dependable, the code quality can be bad, they are
not automatically loaded (which is I guess the point of
them, however it means that users cannot not be
automatically exposed to new functionality) and there's
non-zero overhead in both memory usage and performance.
The first two obviously don't apply for plugins that ship
with Geany.<br>
</blockquote>
<div><br>
</div>
<div>Now that you mention it, there is probably no reason
why we could not default enable some of the plugins
shipped with geany, its just having the settings in the
default config file. And possibly some more plugins could
move to core (+1 for Enrico's Addons TODO for example :)</div>
<div><br>
</div>
<div>Note that it is probable that Geany core could provide
some more support for plugin indentation, but as yet
nobody is sure what that consists of.</div>
<div><br>
</div>
<div>Cheers</div>
<div>Lex</div>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Best regards.
<div class="HOEnZb">
<div class="h5"><br>
_______________________________________________<br>
Devel mailing list<br>
<a moz-do-not-send="true"
href="mailto:Devel@lists.geany.org" target="_blank">Devel@lists.geany.org</a><br>
<a moz-do-not-send="true"
href="https://lists.geany.org/cgi-bin/mailman/listinfo/devel"
target="_blank">https://lists.geany.org/cgi-bin/mailman/listinfo/devel</a><br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
<pre wrap="">_______________________________________________
Devel mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Devel@lists.geany.org">Devel@lists.geany.org</a>
<a class="moz-txt-link-freetext" href="https://lists.geany.org/cgi-bin/mailman/listinfo/devel">https://lists.geany.org/cgi-bin/mailman/listinfo/devel</a>
</pre>
</blockquote>
<br>
</body>
</html>