ソースコードのフォーマットでは、タブを4カラムとするスペーシングを使用し、現在はタブを保存しています(つまりタブをスペースに展開しません)。 各論理インデントのレベルは、更に1つのタブストップです。 レイアウト規則(中括弧の位置など)はBSDの規則に従います。
登録されたパッチは完全にこの書式規則に従わないませんが、そのようにすることを勧めます。 登録されるコードはpgindentに通されます。 ですので、他の書式規則に従って作成して、見ためを良くすることに意味がありません。
Emacsに関しては、~/.emacs初期化ファイルに以下(のようなもの)を追加してください。
;; パスに "postgres" または "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 () ;; PostgreSQL C コード用のフォーマットの設定を行う (interactive) (c-mode) (setq-default tab-width 4) (c-set-style "bsd") ; c-basic-offset を4に設定し、いくつか追加する (c-set-offset 'case-label '+) ; PG に合わせてcase 文のインデントを変更する (setq indent-tabs-mode t)) ; インデント処理時にタブを保持させる
viに関しては、~/.vimrc、またはその類のファイルに下記の内容が含まれている必要があります。
set tabstop=4
または、vi内で下記のようにコマンドを実行してください。
:set ts=4
テキスト閲覧ツール、moreとlessでは以下のようにすればタブを適切に表示させることができます。
more -x4 less -x4