Skip to content

Reformat SQL code inside Emacs using sqlformat or pgformatter

Notifications You must be signed in to change notification settings

agasparovic/sqlformat

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Melpa Status Melpa Stable Status Build Status Support me

sqlformat.el

This Emacs library provides commands and a minor mode for easily reformatting SQL using external programs such as sqlformat, sqlfluff, pg_format or sql-formatter.

Installation

If you choose not to use one of the convenient packages in MELPA, you'll need to add the directory containing sqlformat.el to your load-path, and then (require 'sqlformat).

Usage

Customise the sqlformat-command variable as desired. For example, to use pgformatter (i.e., the pg_format command) with two-character indent and no statement grouping,

(setq sqlformat-command 'pgformatter)
(setq sqlformat-args '("-s2" "-g"))

Then call sqlformat, sqlformat-buffer or sqlformat-region as convenient.

Enable sqlformat-on-save-mode in SQL buffers like this:

(add-hook 'sql-mode-hook 'sqlformat-on-save-mode)

or locally to your project with a form in your .dir-locals.el like this:

((sql-mode
   (mode . sqlformat-on-save)))

You might like to bind sqlformat or sqlformat-buffer to a key, e.g. with:

(define-key sql-mode-map (kbd "C-c C-f") 'sqlformat)

Install the sqlparse (Python) package to get "sqlformat", or pgformatter to get "pg_format"


💝 Support this project and my other Open Source work

💼 LinkedIn profile

✍ sanityinc.com

🐦 @sanityinc

About

Reformat SQL code inside Emacs using sqlformat or pgformatter

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Emacs Lisp 85.0%
  • Makefile 15.0%