A formatação do código fonte utiliza um espaçamento de tabulação de 4 colunas, com as tabulações preservadas (ou seja, as tabulações não são expandidas em espaços). Cada nível lógico de recuo (indentation) é uma parada adicional de tabulação. As regras de posicionamento (colocação das chaves, etc.) seguem as convenções BSD.
Embora as correções submetidas não sejam obrigadas a seguir, de forma alguma, estas regras de formatação, é uma boa idéia segui-las. O código será processado por pgindent e, portanto, não existe motivo para fazê-lo parecer elegante segundo um conjunto de convenções de formatação diferente.
Para o Emacs devem ser adicionadas as seguintes linhas (ou algo semelhante) no arquivo de inicialização ~/.emacs:
;; verificar arquivos com caminho contendo "postgres" ou "pgsql"
(setq auto-mode-alist
(cons '("\\(postgres\\|pgsql\\).*\\.[ch]\\'" . pgsql-c-mode)
auto-mode-alist))
(setq auto-mode-alist
(cons '("\\(postgres\\|pgsql\\).*\\.cc\\'" . pgsql-c-mode)
auto-mode-alist))
(defun pgsql-c-mode ()
;; configurar a formatação para o código C do PostgreSQL
(interactive)
(c-mode)
(setq-default tab-width 4)
(c-set-style "bsd") ; definir c-basic-offset como 4, e outras coisas
(c-set-offset 'case-label '+) ; tweak case indent to match PG custom
(setq indent-tabs-mode t)) ; manter as tabulações nos recuos
Para o editor vi o arquivo ~/.vimrc, ou equivalente, deve conter o seguinte:
set tabstop=4
ou, de maneira equivalente, dentro do vi deve ser utilizado:
:set ts=4
As ferramentas de exibição de texto more e less devem ser chamadas utilizando
more -x4 less -x4
para mostrarem a tabulação de forma apropriada.