Thread

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Make Emacs perl-mode indent more like perltidy.

  2. Make Emacs settings match perltidy configuration

  1. emacs configuration for new perltidy settings

    Peter Eisentraut <peter_e@gmx.net> — 2012-07-11T21:35:26Z

    This might be useful for some people.  Here is an emacs configuration
    for perl-mode that is compatible with the new perltidy settings.  Note
    that the default perl-mode settings produce indentation that will be
    completely shredded by the new perltidy settings.
    
    (defun pgsql-perl-style ()
      "Perl style adjusted for PostgreSQL project"
      (interactive)
      (setq tab-width 4)
      (setq perl-indent-level 4)
      (setq perl-continued-statement-offset 4)
      (setq perl-continued-brace-offset 4)
      (setq perl-brace-offset 0)
      (setq perl-brace-imaginary-offset 0)
      (setq perl-label-offset -2))
    
    (add-hook 'perl-mode-hook
               (lambda ()
                 (if (string-match "postgresql" buffer-file-name)
                     (pgsql-perl-style))))
    
    
    
    
  2. Re: emacs configuration for new perltidy settings

    Dimitri Fontaine <dimitri@2ndquadrant.fr> — 2012-08-27T11:57:10Z

    Peter Eisentraut <peter_e@gmx.net> writes:
    > This might be useful for some people.  Here is an emacs configuration
    > for perl-mode that is compatible with the new perltidy settings.  Note
    > that the default perl-mode settings produce indentation that will be
    > completely shredded by the new perltidy settings.
    
    Thanks!
    -- 
    Dimitri Fontaine
    http://2ndQuadrant.fr     PostgreSQL : Expertise, Formation et Support
    
    
    
  3. Re: emacs configuration for new perltidy settings

    Michael Paquier <michael.paquier@gmail.com> — 2012-08-28T05:46:21Z

    On Thu, Jul 12, 2012 at 6:35 AM, Peter Eisentraut <peter_e@gmx.net> wrote:
    
    > This might be useful for some people.  Here is an emacs configuration
    > for perl-mode that is compatible with the new perltidy settings.  Note
    > that the default perl-mode settings produce indentation that will be
    > completely shredded by the new perltidy settings.
    >
    > (defun pgsql-perl-style ()
    >   "Perl style adjusted for PostgreSQL project"
    >   (interactive)
    >   (setq tab-width 4)
    >   (setq perl-indent-level 4)
    >   (setq perl-continued-statement-offset 4)
    >   (setq perl-continued-brace-offset 4)
    >   (setq perl-brace-offset 0)
    >   (setq perl-brace-imaginary-offset 0)
    >   (setq perl-label-offset -2))
    >
    > (add-hook 'perl-mode-hook
    >            (lambda ()
    >              (if (string-match "postgresql" buffer-file-name)
    >                  (pgsql-perl-style))))
    >
    Cool thanks!
    Very helpful.
    -- 
    Michael Paquier
    http://michael.otacoo.com
    
  4. Re: emacs configuration for new perltidy settings

    Bruce Momjian <bruce@momjian.us> — 2012-08-31T01:41:19Z

    On Thu, Jul 12, 2012 at 12:35:26AM +0300, Peter Eisentraut wrote:
    > This might be useful for some people.  Here is an emacs configuration
    > for perl-mode that is compatible with the new perltidy settings.  Note
    > that the default perl-mode settings produce indentation that will be
    > completely shredded by the new perltidy settings.
    > 
    > (defun pgsql-perl-style ()
    >   "Perl style adjusted for PostgreSQL project"
    >   (interactive)
    >   (setq tab-width 4)
    >   (setq perl-indent-level 4)
    >   (setq perl-continued-statement-offset 4)
    >   (setq perl-continued-brace-offset 4)
    >   (setq perl-brace-offset 0)
    >   (setq perl-brace-imaginary-offset 0)
    >   (setq perl-label-offset -2))
    > 
    > (add-hook 'perl-mode-hook
    >            (lambda ()
    >              (if (string-match "postgresql" buffer-file-name)
    >                  (pgsql-perl-style))))
    
    Added to src/tools/editors/emacs.samples;  applied patch attached.
    
    -- 
      Bruce Momjian  <bruce@momjian.us>        http://momjian.us
      EnterpriseDB                             http://enterprisedb.com
    
      + It's impossible for everything to be true. +
    
  5. Re: emacs configuration for new perltidy settings

    Noah Misch <noah@leadboat.com> — 2019-01-03T05:53:55Z

    On Thu, Jul 12, 2012 at 12:35:26AM +0300, Peter Eisentraut wrote:
    > This might be useful for some people.  Here is an emacs configuration
    > for perl-mode that is compatible with the new perltidy settings.  Note
    > that the default perl-mode settings produce indentation that will be
    > completely shredded by the new perltidy settings.
    > 
    > (defun pgsql-perl-style ()
    >   "Perl style adjusted for PostgreSQL project"
    >   (interactive)
    >   (setq tab-width 4)
    >   (setq perl-indent-level 4)
    >   (setq perl-continued-statement-offset 4)
    >   (setq perl-continued-brace-offset 4)
    
    (Later, commit 56fb890 changed perl-continued-statement-offset to 2.)  This
    indents braces (perltidy aligns the brace with "if", but perl-mode adds
    perl-continued-statement-offset + perl-continued-brace-offset = 6 columns):
    
    		if (-s "src/backend/snowball/stopwords/$lang.stop")
    			  {
    				  $stop = ", StopWords=$lang";
    			  }
    
    If I run perltidy on 60d9979, then run perl-mode indent, the diff between the
    perltidy run and perl-mode indent run is:
     129 files changed, 8468 insertions(+), 8468 deletions(-)
    If I add (perl-continued-brace-offset . -2):
     119 files changed, 3515 insertions(+), 3515 deletions(-)
    If I add (perl-indent-continued-arguments . 4) as well:
     86 files changed, 2626 insertions(+), 2626 deletions(-)
    If I add (perl-indent-parens-as-block . t) as well:
     65 files changed, 2373 insertions(+), 2373 deletions(-)
    
    That's with GNU Emacs 24.5.1.  Versions 24.3.1 and 21.4.1 show similar trends,
    though 21.4.1 predates perl-indent-continued-arguments and
    perl-indent-parens-as-block.
    
    I'm attaching the patch to make it so, along with a patch that illustrates my
    testing method.  "sh reindent-perl.sh" will test emacs.samples using your
    Emacs installation.  (I don't plan to push the testing patch.)
    
  6. Re: emacs configuration for new perltidy settings

    Andrew Dunstan <andrew.dunstan@2ndquadrant.com> — 2019-01-08T13:17:43Z

    On 1/3/19 12:53 AM, Noah Misch wrote:
    > On Thu, Jul 12, 2012 at 12:35:26AM +0300, Peter Eisentraut wrote:
    >> This might be useful for some people.  Here is an emacs configuration
    >> for perl-mode that is compatible with the new perltidy settings.  Note
    >> that the default perl-mode settings produce indentation that will be
    >> completely shredded by the new perltidy settings.
    >>
    >> (defun pgsql-perl-style ()
    >>   "Perl style adjusted for PostgreSQL project"
    >>   (interactive)
    >>   (setq tab-width 4)
    >>   (setq perl-indent-level 4)
    >>   (setq perl-continued-statement-offset 4)
    >>   (setq perl-continued-brace-offset 4)
    > (Later, commit 56fb890 changed perl-continued-statement-offset to 2.)  This
    > indents braces (perltidy aligns the brace with "if", but perl-mode adds
    > perl-continued-statement-offset + perl-continued-brace-offset = 6 columns):
    >
    > 		if (-s "src/backend/snowball/stopwords/$lang.stop")
    > 			  {
    > 				  $stop = ", StopWords=$lang";
    > 			  }
    >
    > If I run perltidy on 60d9979, then run perl-mode indent, the diff between the
    > perltidy run and perl-mode indent run is:
    >  129 files changed, 8468 insertions(+), 8468 deletions(-)
    > If I add (perl-continued-brace-offset . -2):
    >  119 files changed, 3515 insertions(+), 3515 deletions(-)
    > If I add (perl-indent-continued-arguments . 4) as well:
    >  86 files changed, 2626 insertions(+), 2626 deletions(-)
    > If I add (perl-indent-parens-as-block . t) as well:
    >  65 files changed, 2373 insertions(+), 2373 deletions(-)
    >
    > That's with GNU Emacs 24.5.1.  Versions 24.3.1 and 21.4.1 show similar trends,
    > though 21.4.1 predates perl-indent-continued-arguments and
    > perl-indent-parens-as-block.
    >
    > I'm attaching the patch to make it so, along with a patch that illustrates my
    > testing method.  "sh reindent-perl.sh" will test emacs.samples using your
    > Emacs installation.  (I don't plan to push the testing patch.)
    
    
    Sounds good. What do the remaining diffs look like?
    
    
    cheers
    
    
    andrew
    
    
    
    -- 
    
    Andrew Dunstan                https://www.2ndQuadrant.com
    PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
    
    
    
    
  7. Re: emacs configuration for new perltidy settings

    Noah Misch <noah@leadboat.com> — 2019-01-09T01:44:30Z

    On Tue, Jan 08, 2019 at 08:17:43AM -0500, Andrew Dunstan wrote:
    > On 1/3/19 12:53 AM, Noah Misch wrote:
    > > If I run perltidy on 60d9979, then run perl-mode indent, the diff between the
    > > perltidy run and perl-mode indent run is:
    > >  129 files changed, 8468 insertions(+), 8468 deletions(-)
    > > If I add (perl-continued-brace-offset . -2):
    > >  119 files changed, 3515 insertions(+), 3515 deletions(-)
    > > If I add (perl-indent-continued-arguments . 4) as well:
    > >  86 files changed, 2626 insertions(+), 2626 deletions(-)
    > > If I add (perl-indent-parens-as-block . t) as well:
    > >  65 files changed, 2373 insertions(+), 2373 deletions(-)
    
    > Sounds good. What do the remaining diffs look like?
    
    I've attached them.  Most involve statement continuation in some form.  For
    example, src/backend/utils/mb/Unicode has numerous instances where perl-mode
    indents hashref-constructor curly braces as though they were code blocks.
    Other diff lines involve labels.  Others are in string literals.
    
  8. Re: emacs configuration for new perltidy settings

    Andrew Dunstan <andrew.dunstan@2ndquadrant.com> — 2019-01-09T13:57:01Z

    On 1/8/19 8:44 PM, Noah Misch wrote:
    > On Tue, Jan 08, 2019 at 08:17:43AM -0500, Andrew Dunstan wrote:
    >> On 1/3/19 12:53 AM, Noah Misch wrote:
    >>> If I run perltidy on 60d9979, then run perl-mode indent, the diff between the
    >>> perltidy run and perl-mode indent run is:
    >>>  129 files changed, 8468 insertions(+), 8468 deletions(-)
    >>> If I add (perl-continued-brace-offset . -2):
    >>>  119 files changed, 3515 insertions(+), 3515 deletions(-)
    >>> If I add (perl-indent-continued-arguments . 4) as well:
    >>>  86 files changed, 2626 insertions(+), 2626 deletions(-)
    >>> If I add (perl-indent-parens-as-block . t) as well:
    >>>  65 files changed, 2373 insertions(+), 2373 deletions(-)
    >> Sounds good. What do the remaining diffs look like?
    > I've attached them.  Most involve statement continuation in some form.  For
    > example, src/backend/utils/mb/Unicode has numerous instances where perl-mode
    > indents hashref-constructor curly braces as though they were code blocks.
    > Other diff lines involve labels.  Others are in string literals.
    
    
    
    On a very quick glance I notice some things that looked just wrong, and
    some that were at best dubious. It's a pity that we can't get closer to
    what perltidy does, but +1 for applying your changes.
    
    
    cheers
    
    
    andrew
    
    
    -- 
    Andrew Dunstan                https://www.2ndQuadrant.com
    PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services