[fpc-pascal] FreePascal Coding style

Graeme Geldenhuys graemeg.lists at gmail.com
Mon Jan 21 12:40:34 CET 2008


On 21/01/2008, Marco van de Voort <marcov at stack.nl> wrote:
>
> Such schemes have been tried before, but usually fail since that makes
> source only (practically) editable with one editor, which most users loath.
> I don't see what's so different about this one.
>
> Also think about e.g. the trouble with RCS, patch systems etc.


Okay, but did you actually try the example application to see how it
works?  I'll explain, as it was a bit confusing for me as well - I
could see the point either (in the beginning).

Elastic tabstops saves the files with spaces, NOT tabs.  So if you
load those files with any editor that doesn't support Elastic
Tabstops, they are formatted as normal, using spaces.

If you open that file with a editor supporting Elastic Tabstops if
inserts tabstops to keep alignment correct. My inserting tabstops, I
mean in the editor window, NOT the source code. It's like editing a
document in OpenOffice or Word and using Left or Right Align tabstops.
 So for Elastic Tabstops to work, you need a editor component which
supports tabstops - the Lazarus editor doesn't, so I couldn't
implement it.  So while you work with the file in the editor, tabstops
are inserted, removed or move around to keep text alignment as pretty
as can be. But once you save, it inserts the correct amount of spaces
to keep that same alignment on file or (preferred) inserts the minimum
spaces for standard indentation (Object Pascal uses two spaces for
indentation). It doesn't use tab characters. The later option works
best when you have people that prefer different indentation levels as
the editor will automatically replace the two space indentation with a
tabstop in the editor at the correct indentation level.

Version control software can all handle spaces without issue.

Elastic Tabstops works on the *visual appearance* of code in the
editor window only, whereas other people tried the visual appears
_and_ the saved appearance.  Elastic Tabstops is actually a very
cleaver idea.

Regards,
  - Graeme -


_______________________________________________
fpGUI - a cross-platform Free Pascal GUI toolkit
http://opensoft.homeip.net/fpgui/



More information about the fpc-pascal mailing list