emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master 7f7d7cb 16/40: Rename to gnome-minor-mode


From: Daiki Ueno
Subject: [elpa] master 7f7d7cb 16/40: Rename to gnome-minor-mode
Date: Fri, 22 Jan 2016 22:48:40 +0000

branch: master
commit 7f7d7cbab0bf57086076df9238a9c21a3cb73ae6
Author: Daiki Ueno <address@hidden>
Commit: Daiki Ueno <address@hidden>

    Rename to gnome-minor-mode
---
 Makefile              |    4 +-
 README.md             |    8 +-
 gobject-align.el      |  486 ----------------------------------------------
 gobject-minor-mode.el |   63 ------
 gobject-snippet.el    |  513 -------------------------------------------------
 gobject-tests.el      |   97 ----------
 6 files changed, 6 insertions(+), 1165 deletions(-)

diff --git a/Makefile b/Makefile
index 097b25e..3e031e6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 EMACS ?= emacs
 RM ?= rm
-ELC = gobject-align.elc gobject-snippet.elc gobject-minor-mode.elc
+ELC = gnome-align.elc gnome-snippet.elc gnome-minor-mode.elc
 
 all: $(ELC)
 
@@ -10,7 +10,7 @@ all: $(ELC)
 
 check:
        $(EMACS) -Q -batch --eval "(setq load-path (cons nil load-path))" \
-               -l ert -l gobject-tests.el -f ert-run-tests-batch-and-exit
+               -l ert -l gnome-tests.el -f ert-run-tests-batch-and-exit
 
 clean:
        $(RM) -rf $(ELC)
diff --git a/README.md b/README.md
index 7f1af53..a8f06a5 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-gobject-minor-mode
+gnome-minor-mode
 ======
 
 In the C coding style commonly used in GNOME, identifiers are written
@@ -6,7 +6,7 @@ in camel case and function arguments are aligned to the right 
end.
 That makes it a bit cumbersome to keep your code consistent with the
 style, even with align.el or plugins like yasnippet.
 
-gobject-minor-mode is an Emacs minor mode intended to help editing C
+gnome-minor-mode is an Emacs minor mode intended to help editing C
 source code in that style.  It mainly provides two features: text
 alignment and snippet insersion.
 
@@ -18,8 +18,8 @@ Install
 * Add the following lines to ~/.emacs/init.el:
 
 ```
-(autoload 'gobject-minor-mode "gobject-minor-mode" "GObject minor mode" t)
-(add-hook 'c-mode-hook 'gobject-minor-mode)
+(autoload 'gnome-minor-mode "gnome-minor-mode" "GNOME minor mode" t)
+(add-hook 'c-mode-hook 'gnome-minor-mode)
 ```
 
 Usage
diff --git a/gobject-align.el b/gobject-align.el
deleted file mode 100644
index 8db4f9d..0000000
--- a/gobject-align.el
+++ /dev/null
@@ -1,486 +0,0 @@
-;; gobject-align.el --- GObject-style alignment -*- lexical-binding: t; -*-
-;; Copyright (C) 2016 Daiki Ueno <address@hidden>
-
-;; Author: Daiki Ueno <address@hidden>
-;; Keywords: GObject, C, coding style
-
-;; This file is not part of GNU Emacs.
-
-;; This program is free software: you can redistribute it and/or
-;; modify it under the terms of the GNU General Public License as
-;; published by the Free Software Foundation, either version 3 of the
-;; License, or (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program.  If not, see
-;; <http://www.gnu.org/licenses/>.
-
-;;; Code:
-
-(require 'cc-mode)
-(require 'cl-lib)
-
-(defvar gobject-align-max-column 80)
-
-(defvar gobject-align-identifier-start-column nil)
-(make-variable-buffer-local 'gobject-align-identifier-start-column)
-
-(defvar gobject-align-arglist-start-column nil)
-(make-variable-buffer-local 'gobject-align-arglist-start-column)
-
-(defvar gobject-align-arglist-identifier-start-column nil)
-(make-variable-buffer-local 'gobject-align-arglist-identifier-start-column)
-
-(cl-defstruct (gobject-align--argument
-              (:constructor nil)
-              (:constructor gobject-align--make-argument (type-start
-                                                          type-end
-                                                          identifier-start
-                                                          identifier-end))
-              (:copier nil)
-              (:predicate nil))
-  (type-start nil :read-only t)
-  (type-end nil :read-only t)
-  (identifier-start nil :read-only t)
-  (identifier-end nil :read-only t))
-
-(defun gobject-align--marker-column (marker)
-  (save-excursion
-    (goto-char marker)
-    (current-column)))
-
-(defun gobject-align--indent-to-column (column)
-  ;; Prefer 'char **foo' than 'char ** foo'
-  (when (looking-back "\*+" nil t)
-    (setq column (- column (- (match-end 0) (match-beginning 0))))
-    (goto-char (match-beginning 0)))
-  ;; FIXME: should respect indent-tabs-mode?
-  (let (indent-tabs-mode)
-    (indent-to-column column)))
-
-(defun gobject-align--argument-type-width (arg)
-  (- (gobject-align--marker-column (gobject-align--argument-type-end arg))
-     (gobject-align--marker-column (gobject-align--argument-type-start arg))))
-
-(defun gobject-align--arglist-identifier-start-column (arglist start-column)
-  (let ((column start-column)
-       argument-column)
-    (dolist (argument arglist)
-      (setq argument-column (+ start-column
-                              (gobject-align--argument-type-width argument)))
-      (when (gobject-align--argument-identifier-start argument)
-       (save-excursion
-         (goto-char (gobject-align--argument-identifier-start argument))
-         (when (eq (preceding-char) ? )
-           (setq argument-column (1+ argument-column)))))
-      (when (> argument-column column)
-       (setq column argument-column)))
-    column))
-
-(defun gobject-align--argument-identifier-width (argument)
-  (if (gobject-align--argument-identifier-start argument)
-      (- (gobject-align--marker-column
-         (gobject-align--argument-identifier-end argument))
-        (gobject-align--marker-column
-         (gobject-align--argument-identifier-start argument)))
-    0))
-
-(defun gobject-align--arglist-identifier-width (arglist)
-  (let ((width 0)
-       argument-width)
-    (dolist (argument arglist)
-      (setq argument-width (gobject-align--argument-identifier-width argument))
-      (when (> argument-width width)
-       (setq width argument-width)))
-    width))
-
-(defun gobject-align--normalize-arglist-region (beg end)
-  (save-excursion
-    (save-restriction
-      (narrow-to-region beg end)
-      (goto-char (point-min))
-      (while (re-search-forward "\\s-+" nil t)
-       (replace-match " "))
-      (goto-char (point-min))
-      (while (re-search-forward "\\s-*," nil t)
-       (replace-match ",\n"))
-      (goto-char (point-min))
-      (delete-trailing-whitespace)
-      ;; Remove whitespace at the beginning of line
-      (goto-char (point-min))
-      (while (re-search-forward "^\\s-+" nil t)
-       (replace-match ""))
-      ;; Remove empty lines
-      (goto-char (point-min))
-      (delete-matching-lines "^$"))))
-
-(defun gobject-align--parse-arglist (beg end)
-  (save-excursion
-    (save-restriction
-      (narrow-to-region beg end)
-      (let (type-start
-           type-end
-           identifier-start
-           identifier-end
-           arglist
-           last-token-start)
-       (goto-char (point-max))
-       (while (not (bobp))
-         (c-backward-syntactic-ws)
-         (setq identifier-end (point-marker))
-         ;; Array argument, such as 'int a[]'
-         (if (eq (preceding-char) ?\])
-             (c-backward-sexp))
-         (c-backward-token-2)
-         (setq identifier-start (point-marker))
-         (c-backward-syntactic-ws)
-         (if (or (bobp) (eq (preceding-char) ?,))
-             ;; Identifier is omitted, or '...'.
-             (setq type-start identifier-start
-                   type-end identifier-end
-                   identifier-start nil
-                   identifier-end nil)
-           (setq type-end (point-marker)
-                 last-token-start type-end)
-           (while (and (not (bobp))
-                       (progn
-                         (c-backward-token-2)
-                         (unless (eq (char-after) ?,)
-                           (setq last-token-start (point-marker)))))
-             (c-backward-syntactic-ws))
-           (setq type-start last-token-start))
-         (push (gobject-align--make-argument type-start type-end
-                                             identifier-start identifier-end)
-               arglist))
-       arglist))))
-
-;;;###autoload
-(defun gobject-align-at-point (&optional identifier-start-column)
-  "Reformat argument list at point, aligning argument to the right end."
-  (interactive)
-  (save-excursion
-    (let* (start-column arglist)
-      (cl-destructuring-bind (beg end)
-         (gobject-align--arglist-region-at-point (point))
-       (goto-char beg)
-       (setq start-column (current-column))
-       (save-restriction
-         (narrow-to-region beg end)
-         (setq arglist (gobject-align--parse-arglist (point-min) (point-max)))
-         (gobject-align--normalize-arglist-region (point-min) (point-max))
-         (unless identifier-start-column
-           (setq identifier-start-column
-                 (gobject-align--arglist-identifier-start-column arglist 0)))
-         (dolist (argument arglist)
-           (goto-char (gobject-align--argument-type-start argument))
-           (let ((column (if (bobp) 0 start-column)))
-             (when (not (bobp))
-               (gobject-align--indent-to-column start-column))
-             (when (gobject-align--argument-identifier-start argument)
-               (setq column (+ column identifier-start-column))
-               (goto-char (gobject-align--argument-identifier-start argument))
-               (gobject-align--indent-to-column column)))))))))
-
-(cl-defstruct (gobject-align--decl
-              (:constructor nil)
-              (:constructor gobject-align--make-decl (start
-                                                      end
-                                                      identifier-start
-                                                      identifier-end
-                                                      arglist-start
-                                                      arglist-end
-                                                      arglist))
-              (:copier nil)
-              (:predicate nil))
-  (start nil :read-only t)
-  (end nil :read-only t)
-  (identifier-start nil :read-only t)
-  (identifier-end nil :read-only t)
-  (arglist-start nil :read-only t)
-  (arglist-end nil :read-only t)
-  (arglist nil :read-only t))
-
-(defun gobject-align--decls-identifier-start-column (decls start-column)
-  (let ((column start-column)
-       decl-column)
-    (dolist (decl decls)
-      (setq decl-column (+ start-column
-                          (gobject-align--marker-column
-                           (gobject-align--decl-identifier-start decl))))
-      (when (and (<= decl-column gobject-align-max-column)
-                (> decl-column column))
-       (setq column decl-column)))
-    column))
-
-(defun gobject-align--decl-identifier-width (decl)
-  (- (gobject-align--marker-column
-      (gobject-align--decl-identifier-end decl))
-     (gobject-align--marker-column
-      (gobject-align--decl-identifier-start decl))))
-
-(defun gobject-align--decls-arglist-start-column (decls start-column)
-  (let ((column start-column)
-       decl-column
-       (arglist-width
-        (+ (gobject-align--decls-arglist-identifier-start-column decls 0)
-           (gobject-align--decls-arglist-identifier-width decls)
-           (length ");"))))
-    (dolist (decl decls)
-      (setq decl-column (+ start-column
-                          (gobject-align--decl-identifier-width decl)))
-      (when (and (<= (+ decl-column arglist-width)
-                    gobject-align-max-column)
-                (> decl-column column))
-       (setq column decl-column)))
-    (1+ column)))
-
-(defun gobject-align--decls-arglist-identifier-width (decls)
-  (let ((width 0)
-       decl-width)
-    (dolist (decl decls)
-      (setq decl-width (gobject-align--arglist-identifier-width
-                       (gobject-align--decl-arglist decl)))
-      (when (> decl-width width)
-       (setq width decl-width)))
-    width))
-
-(defun gobject-align--decls-arglist-identifier-start-column (decls 
start-column)
-  (let ((column start-column)
-       decl-column)
-    (dolist (decl decls)
-      (setq decl-column (gobject-align--arglist-identifier-start-column
-                        (gobject-align--decl-arglist decl)
-                        start-column))
-      ;; FIXME: should wrap lines inside argument list?
-      (when (> decl-column column)
-       (setq column decl-column)))
-    column))
-
-(defun gobject-align--parse-decl (beg end)
-  ;; Parse at most one func declaration found in BEG END.
-  (save-excursion
-    (save-restriction
-      (narrow-to-region beg end)
-      (let (arglist-start
-           arglist-end
-           identifier-start
-           identifier-end
-           vfunc-p)
-       (goto-char (point-min))
-       (c-forward-syntactic-ws)
-       (unless (looking-at
-                "typedef\\|#\\|G_\\(?:DECLARE\\|DEFINE\\)")
-         (while (and (not (eobp))
-                     (not (eq (char-after) ?\()))
-           (c-forward-token-2)
-           (c-forward-syntactic-ws))
-         ;; Identifier is vfunc.
-         (when (looking-at "(\\s-*\\*")
-           (c-forward-sexp)
-           (c-forward-syntactic-ws)
-           (setq vfunc-p t))
-         (when (eq (char-after) ?\()
-           (setq arglist-start (point-marker))
-           (c-backward-syntactic-ws)
-           (setq identifier-end (point-marker))
-           (if vfunc-p
-               (c-backward-sexp)
-             (c-backward-token-2))
-           (setq identifier-start (point-marker))
-           (goto-char arglist-start)
-           (c-forward-sexp)
-           (setq arglist-end (point-marker))
-           (gobject-align--make-decl beg end
-                                     identifier-start identifier-end
-                                     arglist-start arglist-end
-                                     (gobject-align--parse-arglist
-                                      (1+ arglist-start)
-                                      (1- arglist-end)))))))))
-
-(defun gobject-align--normalize-decl (decl)
-  (save-excursion
-    (save-restriction
-      (narrow-to-region (gobject-align--decl-identifier-start decl)
-                       (gobject-align--decl-arglist-end decl))
-      (goto-char (point-min))
-      (while (re-search-forward "\n" nil t)
-       (replace-match " ")))
-    (save-restriction
-      (narrow-to-region (gobject-align--decl-start decl)
-                       (gobject-align--decl-end decl))
-      (goto-char (point-min))
-      (while (re-search-forward "\\s-+" nil t)
-       (replace-match " ")))))
-
-(defun gobject-align--arglist-region-at-point (point)
-  (save-excursion
-    (let (start)
-      (goto-char point)
-      (c-beginning-of-statement-1)
-      (c-backward-syntactic-ws)
-      (unless (eq ?\( (preceding-char))
-       (error "No containing argument list"))
-      (setq start (point))
-      (backward-char)
-      (condition-case nil
-         (c-forward-sexp)
-       (error
-        (error "No closing parenthesis")))
-      (backward-char)
-      (list start (point)))))
-
-;;;###autoload
-(defun gobject-align-set-column (symbol)
-  "Set alignment column of SYMBOL."
-  (interactive
-   (let ((symbol-name (completing-read "Symbol to change: "
-                                      '("identifier-start"
-                                        "arglist-start"
-                                        "arglist-identifier-start")
-                                      nil t)))
-     (list (intern (format "gobject-align-%s-column" symbol-name)))))
-  (set symbol (current-column)))
-
-(defun gobject-align--scan-decls (beg end)
-  (save-excursion
-    (save-restriction
-      (narrow-to-region beg end)
-      (goto-char (point-min))
-      (let (decls)
-       (while (not (eobp))
-         (let (decl-start decl-end decl)
-           (c-forward-syntactic-ws)
-           (setq decl-start (point-marker))
-           (c-end-of-statement)
-           (setq decl-end (point-marker))
-           (setq decl (gobject-align--parse-decl decl-start decl-end))
-           (when decl
-             (push decl decls))))
-       decls))))
-
-(defun gobject-align--compute-optimal-columns (beg end)
-  (let ((buffer (current-buffer))
-       decls)
-    (with-temp-buffer
-      (insert-buffer-substring-no-properties buffer beg end)
-      (c-mode)
-      (setq decls (gobject-align--scan-decls (point-min) (point-max)))
-      (mapc #'gobject-align--normalize-decl decls)
-      (let* ((identifier-start-column
-             (gobject-align--decls-identifier-start-column
-              decls 0))
-            (arglist-start-column
-             (gobject-align--decls-arglist-start-column
-              decls identifier-start-column))
-            (arglist-identifier-start-column
-             (gobject-align--decls-arglist-identifier-start-column
-              decls (+ (length "(") arglist-start-column))))
-       (list (cons 'identifier-start-column
-                   identifier-start-column)
-             (cons 'arglist-start-column
-                   arglist-start-column)
-             (cons 'arglist-identifier-start-column
-                   arglist-identifier-start-column))))))
-
-;;;###autoload
-(defun gobject-align-compute-optimal-columns (beg end)
-  "Compute the optimal alignment rule from the declarations in BEG and END.
-
-This sets `gobject-align-identifier-start-column',
-`gobject-align-arglist-start-column', and
-`gobject-align-arglist-identifier-start-column'."
-  (interactive "r")
-  (let ((columns (gobject-align--compute-optimal-columns beg end)))
-    (setq gobject-align-identifier-start-column
-         (cdr (assq 'identifier-start-column columns))
-         gobject-align-arglist-start-column
-         (cdr (assq 'arglist-start-column columns))
-         gobject-align-arglist-identifier-start-column
-         (cdr (assq 'arglist-identifier-start-column columns)))
-    (message
-     "identifier-start: %d, arglist-start: %d, arglist-identifier-start: %d"
-     gobject-align-identifier-start-column
-     gobject-align-arglist-start-column
-     gobject-align-arglist-identifier-start-column)))
-
-;;;###autoload
-(defun gobject-align-guess-columns (beg end)
-  "Guess the existing alignment rule from the declarations in BEG and END.
-
-This sets `gobject-align-identifier-start-column',
-`gobject-align-arglist-start-column', and
-`gobject-align-arglist-identifier-start-column'."
-  (interactive "r")
-  (let ((decls (gobject-align--scan-decls beg end))
-       arglist)
-    (unless decls
-      (error "No function declaration in the region"))
-    (setq arglist (gobject-align--parse-arglist
-                  (1+ (gobject-align--decl-arglist-start (car decls)))
-                  (1- (gobject-align--decl-arglist-end (car decls)))))
-    (unless arglist
-      (error "Empty argument list"))
-    (unless (gobject-align--argument-identifier-start (car arglist))
-      (error "No identifier in the argument list"))
-    (setq gobject-align-identifier-start-column
-         (gobject-align--marker-column
-          (gobject-align--decl-identifier-start (car decls)))
-         gobject-align-arglist-start-column
-         (gobject-align--marker-column
-          (gobject-align--decl-arglist-start (car decls)))
-         gobject-align-arglist-identifier-start-column
-         (gobject-align--marker-column
-          (gobject-align--argument-identifier-start (car arglist))))
-    (message
-     "identifier-start: %d, arglist-start: %d, arglist-identifier-start: %d"
-     gobject-align-identifier-start-column
-     gobject-align-arglist-start-column
-     gobject-align-arglist-identifier-start-column)))
-
-;;;###autoload
-(defun gobject-align-region (beg end)
-  "Reformat function declarations in the region between BEG and END."
-  (interactive "r")
-  (save-excursion
-    (let (decls)
-      (save-restriction
-       (narrow-to-region beg end)
-       (unless (and gobject-align-identifier-start-column
-                    gobject-align-arglist-start-column
-                    gobject-align-arglist-identifier-start-column)
-         (let ((columns (gobject-align--compute-optimal-columns beg end)))
-           (unless gobject-align-identifier-start-column
-             (setq gobject-align-identifier-start-column
-                   (cdr (assq 'identifier-start-column columns))))
-           (unless gobject-align-arglist-start-column
-             (setq gobject-align-arglist-start-column
-                   (cdr (assq 'arglist-start-column columns))))
-           (unless gobject-align-arglist-identifier-start-column
-             (setq gobject-align-arglist-identifier-start-column
-                   (cdr (assq 'arglist-identifier-start-column columns))))))
-       (setq decls (gobject-align--scan-decls beg end))
-       (mapc #'gobject-align--normalize-decl decls)
-       (dolist (decl decls)
-         (goto-char (gobject-align--decl-identifier-start decl))
-         (gobject-align--indent-to-column
-          gobject-align-identifier-start-column)
-         (goto-char (gobject-align--decl-identifier-end decl))
-         (when (>= (current-column) gobject-align-arglist-start-column)
-           (insert "\n"))
-         (goto-char (gobject-align--decl-arglist-start decl))
-         (gobject-align--indent-to-column
-          gobject-align-arglist-start-column)
-         (forward-char)
-         (gobject-align-at-point
-          (- (- gobject-align-arglist-identifier-start-column
-                (length "("))
-             gobject-align-arglist-start-column)))))))
-
-(provide 'gobject-align)
-
-;;; gobject-align.el ends here
diff --git a/gobject-minor-mode.el b/gobject-minor-mode.el
deleted file mode 100644
index d3a310d..0000000
--- a/gobject-minor-mode.el
+++ /dev/null
@@ -1,63 +0,0 @@
-;;; gobject-minor-mode.el --- minor mode for editing GObject-style C source 
code -*- lexical-binding: t; -*-
-;; Copyright (C) 2016 Daiki Ueno <address@hidden>
-
-;; Author: Daiki Ueno <address@hidden>
-;; Keywords: GObject, C, coding style
-
-;; This file is not part of GNU Emacs.
-
-;; This program is free software: you can redistribute it and/or
-;; modify it under the terms of the GNU General Public License as
-;; published by the Free Software Foundation, either version 3 of the
-;; License, or (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program.  If not, see
-;; <http://www.gnu.org/licenses/>.
-
-;;; Code:
-
-(autoload 'gobject-align-at-point "gobject-align")
-(autoload 'gobject-align-region "gobject-align")
-(autoload 'gobject-align-set-column "gobject-align")
-(autoload 'gobject-align-guess-columns "gobject-align")
-(autoload 'gobject-align-compute-optimal-columns "gobject-align")
-(autoload 'gobject-snippet-insert-package_class "gobject-snippet")
-(autoload 'gobject-snippet-insert-PACKAGE_CLASS "gobject-snippet")
-(autoload 'gobject-snippet-insert-PackageClass "gobject-snippet")
-(autoload 'gobject-snippet-insert-interface-declation "gobject-snippet")
-(autoload 'gobject-snippet-insert-class-declation "gobject-snippet")
-(autoload 'gobject-snippet-insert-set_property "gobject-snippet")
-(autoload 'gobject-snippet-insert-get_property "gobject-snippet")
-(autoload 'gobject-snippet-insert-dispose "gobject-snippet")
-(autoload 'gobject-snippet-insert-finalize "gobject-snippet")
-(autoload 'gobject-snippet-insert-notify "gobject-snippet")
-(autoload 'gobject-snippet-insert-constructed "gobject-snippet")
-(autoload 'gobject-snippet-insert "gobject-snippet")
-
-(defvar gobject-minor-mode-map
-  (let ((keymap (make-sparse-keymap)))
-    (define-key keymap "\C-c\C-ga" 'gobject-align-at-point)
-    (define-key keymap "\C-c\C-gr" 'gobject-align-region)
-    (define-key keymap "\C-c\C-gf" 'gobject-align-set-column)
-    (define-key keymap "\C-c\C-gg" 'gobject-align-guess-columns)
-    (define-key keymap "\C-c\C-g\C-g" 'gobject-align-compute-optimal-columns)
-    (define-key keymap "\C-c\C-gc" 'gobject-snippet-insert-package_class)
-    (define-key keymap "\C-c\C-gC" 'gobject-snippet-insert-PACKAGE_CLASS)
-    (define-key keymap "\C-c\C-g\C-c" 'gobject-snippet-insert-PackageClass)
-    (define-key keymap "\C-c\C-gs" 'gobject-snippet-insert)
-    keymap))
-
-;;;###autoload
-(define-minor-mode gobject-minor-mode
-  "A minor-mode for editing GObject-based C source code."
-  nil " GObject" gobject-minor-mode-map)
-
-(provide 'gobject-c-mode)
-
-;;; gobject-c-mode.el ends here
diff --git a/gobject-snippet.el b/gobject-snippet.el
deleted file mode 100644
index f7dfd44..0000000
--- a/gobject-snippet.el
+++ /dev/null
@@ -1,513 +0,0 @@
-;;; gobject-snippet.el --- GObject code generation -*- lexical-binding: t; -*-
-;; Copyright (C) 2016 Daiki Ueno <address@hidden>
-
-;; Author: Daiki Ueno <address@hidden>
-;; Keywords: GObject, C, coding style
-
-;; This file is not part of GNU Emacs.
-
-;; This program is free software: you can redistribute it and/or
-;; modify it under the terms of the GNU General Public License as
-;; published by the Free Software Foundation, either version 3 of the
-;; License, or (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful, but
-;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-;; General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program.  If not, see
-;; <http://www.gnu.org/licenses/>.
-
-;;; Code:
-
-(require 'gobject-align)
-
-(eval-when-compile
-  (require 'subword))
-
-(declare-function subword-forward "subword.el" (&optional arg))
-
-(defvar gobject-snippet-package nil)
-(make-variable-buffer-local 'gobject-snippet-package)
-
-(defvar gobject-snippet-class nil)
-(make-variable-buffer-local 'gobject-snippet-class)
-
-(defvar gobject-snippet-parent-package nil)
-(make-variable-buffer-local 'gobject-snippet-parent-package)
-
-(defvar gobject-snippet-parent-class nil)
-(make-variable-buffer-local 'gobject-snippet-parent-class)
-
-(defvar gobject-snippet-align-arglist nil)
-(make-variable-buffer-local 'gobject-snippet-align-arglist)
-
-(defun gobject-snippet--parse-name (name)
-  (require 'subword)
-  (with-temp-buffer
-    (let (words)
-      (insert name)
-      (goto-char (point-min))
-      (while (not (eobp))
-       ;; Skip characters not recognized by subword-mode.
-       (if (looking-at "[^[:lower:][:upper:][:digit:]]+")
-           (goto-char (match-end 0)))
-       (push (buffer-substring (point) (progn (subword-forward 1)
-                                              (point)))
-             words))
-      (nreverse words))))
-
-(defun gobject-snippet--read-package-and-class (package-prompt
-                                               class-prompt
-                                               package-symbol
-                                               class-symbol)
-  (when (or current-prefix-arg
-           (not (and (symbol-value package-symbol)
-                     (symbol-value class-symbol))))
-    (set package-symbol
-        (gobject-snippet--parse-name
-         (read-string (or package-prompt
-                          "Package (CamelCase): ")
-                      (if (symbol-value package-symbol)
-                          (gobject-snippet--format-Package
-                           (symbol-value package-symbol))))))
-    (set class-symbol
-        (gobject-snippet--parse-name
-         (read-string (or class-prompt
-                          "Class (CamelCase): ")
-                      (if (symbol-value class-symbol)
-                          (gobject-snippet--format-Class
-                           (symbol-value class-symbol)))))))
-  (list (symbol-value package-symbol) (symbol-value class-symbol)))
-
-(defun gobject-snippet--format-PACKAGE (package)
-  (mapconcat #'upcase package "_"))
-(defalias 'gobject-snippet--format-CLASS 'gobject-snippet--format-PACKAGE)
-
-(defun gobject-snippet--format-PACKAGE_CLASS (package class)
-  (concat (gobject-snippet--format-PACKAGE package)
-         "_"
-         (gobject-snippet--format-CLASS class)))
-
-(defun gobject-snippet--format-package (package)
-  (mapconcat #'downcase package "_"))
-(defalias 'gobject-snippet--format-class 'gobject-snippet--format-package)
-
-(defun gobject-snippet--format-package_class (package class)
-  (concat (gobject-snippet--format-package package)
-         "_"
-         (gobject-snippet--format-class class)))
-
-(defun gobject-snippet--format-Package (package)
-  (mapconcat #'identity package ""))
-(defalias 'gobject-snippet--format-Class 'gobject-snippet--format-Package)
-
-(defun gobject-snippet--format-PackageClass (package class)
-  (concat (gobject-snippet--format-Package package)
-         (gobject-snippet--format-Class class)))
-
-;;;###autoload
-(defun gobject-snippet-insert-package_class (package class)
-  "Insert the class name before the current point."
-  (interactive (gobject-snippet--read-package-and-class
-               nil nil
-               'gobject-snippet-package
-               'gobject-snippet-class))
-  (insert (gobject-snippet--format-package_class package class)))
-
-;;;###autoload
-(defun gobject-snippet-insert-PACKAGE_CLASS (package class)
-  "Insert the class name before the current point."
-  (interactive (gobject-snippet--read-package-and-class
-               nil nil
-               'gobject-snippet-package
-               'gobject-snippet-class))
-  (insert (gobject-snippet--format-PACKAGE_CLASS package class)))
-
-;;;###autoload
-(defun gobject-snippet-insert-PackageClass (package class)
-  "Insert the class name (in CamelCase) before the current point."
-  (interactive (gobject-snippet--read-package-and-class
-               nil nil
-               'gobject-snippet-package
-               'gobject-snippet-class))
-  (insert (gobject-snippet--format-PackageClass package class)))
-
-(defun gobject-snippet-insert-interface-declaration (package iface
-                                                            parent-package 
parent-class)
-  "Insert interface declaration for PACKAGE and IFACE"
-  (interactive
-   (append (gobject-snippet--read-package-and-class
-           nil
-           "Interface (CamelCase): "
-           'gobject-snippet-package
-           'gobject-snippet-class)
-          (gobject-snippet--read-package-and-class
-           "Parent package (CamelCase): "
-           "Parent class (CamelCase): "
-           'gobject-snippet-parent-package
-           'gobject-snippet-parent-class)))
-  (insert "\
-#define " (gobject-snippet--format-PACKAGE package) "_TYPE_" 
(gobject-snippet--format-CLASS iface) " (" (gobject-snippet--format-package 
package) "_" (gobject-snippet--format-class iface) "_get_type ())
-G_DECLARE_INTERFACE (" (gobject-snippet--format-PackageClass package iface) ", 
"
-(gobject-snippet--format-package_class package iface) ", " 
(gobject-snippet--format-PACKAGE package) ", " (gobject-snippet--format-CLASS 
iface) ", " (gobject-snippet--format-PackageClass parent-package parent-class) 
")
-"))
-
-(defun gobject-snippet--insert-class-declaration (package
-                                                 class
-                                                 parent-package
-                                                 parent-class
-                                                 derivable)
-  (insert "\
-#define " (gobject-snippet--format-PACKAGE package) "_TYPE_" 
(gobject-snippet--format-CLASS class) " (" 
(gobject-snippet--format-package_class package class) "_get_type ())
-G_DECLARE_" (if derivable "DERIVABLE" "FINAL") "_TYPE (" 
(gobject-snippet--format-PackageClass package class) ", "
-(gobject-snippet--format-package_class package class) ", " 
(gobject-snippet--format-PACKAGE package) ", " (gobject-snippet--format-CLASS 
class) ", " (gobject-snippet--format-PackageClass parent-package parent-class) 
")
-"))
-
-(defun gobject-snippet-insert-final-class-declaration (package
-                                                    class
-                                                    parent-package
-                                                    parent-class)
-  "Insert final class declaration for PACKAGE and CLASS."
-  (interactive
-   (append (gobject-snippet--read-package-and-class
-           nil nil
-           'gobject-snippet-package
-           'gobject-snippet-class)
-          (gobject-snippet--read-package-and-class
-           "Parent package (CamelCase): "
-           "Parent class (CamelCase): "
-           'gobject-snippet-parent-package
-           'gobject-snippet-parent-class)))
-  (gobject-snippet--insert-class-declaration package
-                                            class
-                                            parent-package
-                                            parent-class
-                                            nil))
-
-(defun gobject-snippet-insert-derivable-class-declaration (package
-                                                        class
-                                                        parent-package
-                                                        parent-class)
-  "Insert derivable class declaration for PACKAGE and CLASS."
-  (interactive
-   (append (gobject-snippet--read-package-and-class
-           nil nil
-           'gobject-snippet-package
-           'gobject-snippet-class)
-          (gobject-snippet--read-package-and-class
-           "Parent package (CamelCase): "
-           "Parent class (CamelCase): "
-           'gobject-snippet-parent-package
-           'gobject-snippet-parent-class)))
-  (gobject-snippet--insert-class-declaration package
-                                            class
-                                            parent-package
-                                            parent-class
-                                            t))
-
-(defun gobject-snippet-insert-interface-definition (package
-                                                 iface
-                                                 parent-package
-                                                 parent-class)
-  "Insert class definition for PACKAGE and CLASS."
-  (interactive
-   (append (gobject-snippet--read-package-and-class
-           nil
-           "Interface (CamelCase): "
-           'gobject-snippet-package
-           'gobject-snippet-class)
-          (gobject-snippet--read-package-and-class
-           "Parent package (CamelCase): "
-           "Parent class (CamelCase): "
-           'gobject-snippet-parent-package
-           'gobject-snippet-parent-class)))
-  (insert "\
-static void
-" (gobject-snippet--format-package_class package iface) "_default_init (" 
(gobject-snippet--format-PackageClass package iface) "Interface *iface) {
-}
-
-G_DEFINE_INTERFACE (" (gobject-snippet--format-PackageClass package iface) ", "
-(gobject-snippet--format-package_class package iface) ", " 
(gobject-snippet--format-PACKAGE parent-package) "_TYPE_" 
(gobject-snippet--format-CLASS parent-class) ")
-"))
-
-(defun gobject-snippet--insert-class-definition (package
-                                              class
-                                              parent-package
-                                              parent-class
-                                              abstract)
-  (insert "\
-G_DEFINE_" (if abstract "ABSTRACT_" "") "TYPE (" 
(gobject-snippet--format-PackageClass package class) ", "
-(gobject-snippet--format-package_class package class) ", " 
(gobject-snippet--format-PACKAGE parent-package) "_TYPE_" 
(gobject-snippet--format-CLASS parent-class) ")
-
-static void
-" (gobject-snippet--format-package_class package class) "_class_init (" 
(gobject-snippet--format-PackageClass package class) "Class *klass)
-{
-}
-
-static void
-" (gobject-snippet--format-package_class package class) "_init (" 
(gobject-snippet--format-PackageClass package class) " *self)
-{
-}
-"))
-
-(defun gobject-snippet-insert-class-definition (package
-                                             class
-                                             parent-package
-                                             parent-class)
-  "Insert class definition for PACKAGE and CLASS."
-  (interactive
-   (append (gobject-snippet--read-package-and-class
-           nil nil
-           'gobject-snippet-package
-           'gobject-snippet-class)
-          (gobject-snippet--read-package-and-class
-           "Parent package (CamelCase): "
-           "Parent class (CamelCase): "
-           'gobject-snippet-parent-package
-           'gobject-snippet-parent-class)))
-  (gobject-snippet--insert-class-definition package
-                                         class
-                                         parent-package
-                                         parent-class
-                                         nil))
-
-(defun gobject-snippet-insert-abstract-class-definition (package
-                                                      class
-                                                      parent-package
-                                                      parent-class)
-  "Insert abstract class definition for PACKAGE and CLASS."
-  (interactive
-   (append (gobject-snippet--read-package-and-class
-           nil nil
-           'gobject-snippet-package
-           'gobject-snippet-class)
-          (gobject-snippet--read-package-and-class
-           "Parent package (CamelCase): "
-           "Parent class (CamelCase): "
-           'gobject-snippet-parent-package
-           'gobject-snippet-parent-class)))
-  (gobject-snippet--insert-class-definition package
-                                         class
-                                         parent-package
-                                         parent-class
-                                         t))
-
-(defun gobject-snippet-insert-constructor (package class)
-  "Insert 'constructor' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (arglist-start body-start)
-    (insert "\
-static GObject *
-" (gobject-snippet--format-package_class package class) "_constructor (")
-    (setq arglist-start (point-marker))
-    (insert "GType *object,
-guint n_construct_properties,
-GObjectConstructParam *construct_properties")
-    (funcall (if gobject-snippet-align-arglist
-                #'gobject-align-region
-              #'indent-region)
-            arglist-start (point))
-    (insert ")\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-  (gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  G_OBJECT_CLASS (" (gobject-snippet--format-package_class package class) 
"_parent_class)->constructed (object);
-}
-")
-    (indent-region body-start (point))))
-
-(defun gobject-snippet-insert-set_property (package class)
-  "Insert 'set_property' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (arglist-start body-start)
-    (insert "\
-static void
-" (gobject-snippet--format-package_class package class) "_set_property (")
-    (setq arglist-start (point-marker))
-    (insert "GObject *object,
-guint prop_id,
-const GValue *value,
-GParamSpec *pspec")
-    (funcall (if gobject-snippet-align-arglist
-                #'gobject-align-region
-              #'indent-region)
-            arglist-start (point))
-    (insert ")\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-  (gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  switch (prop_id)
-    {
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-      break;
-    }
-}
-")
-    (indent-region body-start (point))))
-
-(defun gobject-snippet-insert-get_property (package class)
-  "Insert 'get_property' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (arglist-start body-start)
-    (insert "\
-static void
-" (gobject-snippet--format-package_class package class) "_get_property (")
-    (setq arglist-start (point-marker))
-    (insert "GObject *object,
-guint prop_id,
-GValue *value,
-GParamSpec *pspec")
-    (funcall (if gobject-snippet-align-arglist
-                #'gobject-align-region
-              #'indent-region)
-            arglist-start (point))
-    (insert ")\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-(gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  switch (prop_id)
-    {
-    default:
-      G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
-      break;
-    }
-}
-")
-    (indent-region body-start (point))))
-
-(defun gobject-snippet-insert-dispose (package class)
-  "Insert 'dispose' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (body-start)
-    (insert "\
-static void
-" (gobject-snippet--format-package_class package class) "_dispose (GObject 
*object)\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-  (gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  G_OBJECT_CLASS (" (gobject-snippet--format-package_class package class) 
"_parent_class)->dispose (object);
-}
-")
-    (indent-region body-start (point))))
-
-(defun gobject-snippet-insert-finalize (package class)
-  "Insert 'finalize' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (body-start)
-    (insert "\
-static void
-" (gobject-snippet--format-package_class package class) "_finalize (GObject 
*object)\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-  (gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  G_OBJECT_CLASS (" (gobject-snippet--format-package_class package class) 
"_parent_class)->finalize (object);
-}
-")
-    (indent-region body-start (point))))
-
-(defun gobject-snippet-insert-notify (package class)
-  "Insert 'notify' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (body-start)
-    (insert "\
-static void
-" (gobject-snippet--format-package_class package class) "_notify (GObject 
*object)\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-  (gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  G_OBJECT_CLASS (" (gobject-snippet--format-package_class package class) 
"_parent_class)->finalize (object);
-}
-")
-    (indent-region body-start (point))))
-
-(defun gobject-snippet-insert-constructed (package class)
-  "Insert 'constructed' vfunc of GObjectClass for PACKAGE and CLASS."
-  (interactive
-   (gobject-snippet--read-package-and-class
-    nil nil
-    'gobject-snippet-package
-    'gobject-snippet-class))
-  (let (body-start)
-    (insert "\
-static void
-" (gobject-snippet--format-package_class package class) "_constructed (GObject 
*object)\n")
-    (setq body-start (point-marker))
-    (insert "{
-  " (gobject-snippet--format-PackageClass package class) " *self = "
-  (gobject-snippet--format-PACKAGE_CLASS package class) " (object);
-
-  G_OBJECT_CLASS (" (gobject-snippet--format-package_class package class) 
"_parent_class)->constructed (object);
-}
-")
-    (indent-region body-start (point))))
-
-(defvar gobject-snippet-snippet-commands
-  '(("G_DECLARE_INTERFACE" . gobject-snippet-insert-interface-declaration)
-    ("G_DECLARE_FINAL_TYPE" . gobject-snippet-insert-final-class-declaration)
-    ("G_DECLARE_DERIVABLE_TYPE" .
-     gobject-snippet-insert-derivable-class-declaration)
-    ("G_DEFINE_INTERFACE" . gobject-snippet-insert-interface-definition)
-    ("G_DEFINE_TYPE" . gobject-snippet-insert-class-definition)
-    ("G_DEFINE_ABSTRACT_TYPE" .
-     gobject-snippet-insert-abstract-class-definition)
-    ("GObjectClass.constructor" . gobject-snippet-insert-constructor)
-    ("GObjectClass.set_property" . gobject-snippet-insert-set_property)
-    ("GObjectClass.get_property" . gobject-snippet-insert-get_property)
-    ("GObjectClass.dispose" . gobject-snippet-insert-dispose)
-    ("GObjectClass.finalize" . gobject-snippet-insert-finalize)
-    ;; GObjectClass.dispatch_properties_changed
-    ("GObjectClass.notify" . gobject-snippet-insert-notify)
-    ("GObjectClass.contructed" . gobject-snippet-insert-constructed)))
-
-;;;###autoload
-(defun gobject-snippet-insert (snippet)
-  (interactive
-   (list (completing-read "Snippet: " gobject-snippet-snippet-commands nil t)))
-  (let ((entry (assoc snippet gobject-snippet-snippet-commands)))
-    (unless entry
-      (error "Unknown snippet: %s" snippet))
-    (call-interactively (cdr entry))))
-
-(provide 'gobject-snippet)
-
-;;; gobject-snippet.el ends here
diff --git a/gobject-tests.el b/gobject-tests.el
deleted file mode 100644
index e0ec750..0000000
--- a/gobject-tests.el
+++ /dev/null
@@ -1,97 +0,0 @@
-(require 'gobject-align)
-
-(defconst gobject-test-program-1 "\
-GGpgCtx *g_gpg_ctx_new (GError **error);
-
-typedef void (*GGpgProgressCallback) (gpointer user_data,
-                                      const gchar *what,
-                                      gint type,
-                                      gint current,
-                                      gint total);
-
-void g_gpg_ctx_set_progress_callback (GGpgCtx *ctx,
-                                      GGpgProgressCallback callback,
-                                      gpointer user_data,
-                                      GDestroyNotify destroy_data);
-void g_gpg_ctx_add_signer (GGpgCtx *ctx, GGpgKey *key);
-guint g_gpg_ctx_get_n_signers (GGpgCtx *ctx);
-GGpgKey *g_gpg_ctx_get_signer (GGpgCtx *ctx, guint index);
-void g_gpg_ctx_clear_signers (GGpgCtx *ctx);
-")
-
-(defconst gobject-test-program-1-aligned "\
-GGpgCtx *g_gpg_ctx_new                   (GError             **error);
-
-typedef void (*GGpgProgressCallback) (gpointer user_data,
-                                      const gchar *what,
-                                      gint type,
-                                      gint current,
-                                      gint total);
-
-void     g_gpg_ctx_set_progress_callback (GGpgCtx             *ctx,
-                                          GGpgProgressCallback callback,
-                                          gpointer             user_data,
-                                          GDestroyNotify       destroy_data);
-void     g_gpg_ctx_add_signer            (GGpgCtx             *ctx,
-                                          GGpgKey             *key);
-guint    g_gpg_ctx_get_n_signers         (GGpgCtx             *ctx);
-GGpgKey *g_gpg_ctx_get_signer            (GGpgCtx             *ctx,
-                                          guint                index);
-void     g_gpg_ctx_clear_signers         (GGpgCtx             *ctx);
-")
-
-(defconst gobject-test-program-2 "\
-GDK_AVAILABLE_IN_3_16
-const gchar **          gtk_widget_list_action_prefixes (GtkWidget             
*widget);
-")
-
-(defconst gobject-test-program-3 "\
-  /* overridable methods */
-  void       (*set_property)            (GObject        *object,
-                                         guint           property_id,
-                                         const GValue   *value,
-                                         GParamSpec     *pspec);
-  void       (*get_property)            (GObject        *object,
-                                         guint           property_id,
-                                         GValue         *value,
-                                         GParamSpec     *pspec);
-")
-
-(ert-deftest gobject-test-align--compute-optimal-columns ()
-  "Tests the `gobject-align--compute-optimal-columns'."
-  (with-temp-buffer
-    (insert gobject-test-program-1)
-    (c-mode)
-    (let ((columns (gobject-align--compute-optimal-columns (point-min) 
(point-max))))
-      (should (= (cdr (assq 'identifier-start-column columns)) 9))
-      (should (= (cdr (assq 'arglist-start-column columns)) 41))
-      (should (= (cdr (assq 'arglist-identifier-start-column columns)) 63)))))
-
-(ert-deftest gobject-test-align-region ()
-  "Tests the `gobject-align-region'."
-  (with-temp-buffer
-    (insert gobject-test-program-1)
-    (c-mode)
-    (gobject-align-compute-optimal-columns (point-min) (point-max))
-    (gobject-align-region (point-min) (point-max))
-    (should (equal (buffer-string) gobject-test-program-1-aligned))))
-
-(ert-deftest gobject-test-align-guess-columns-1 ()
-  "Tests the `gobject-align-guess-columns'."
-  (with-temp-buffer
-    (insert gobject-test-program-2)
-    (c-mode)
-    (gobject-align-guess-columns (point-min) (point-max))
-    (should (= gobject-align-identifier-start-column 24))
-    (should (= gobject-align-arglist-start-column 56))
-    (should (= gobject-align-arglist-identifier-start-column 80))))
-
-(ert-deftest gobject-test-align-guess-columns-2 ()
-  "Tests the `gobject-align-guess-columns'."
-  (with-temp-buffer
-    (insert gobject-test-program-3)
-    (c-mode)
-    (gobject-align-guess-columns (point-min) (point-max))
-    (should (= gobject-align-identifier-start-column 13))
-    (should (= gobject-align-arglist-start-column 40))
-    (should (= gobject-align-arglist-identifier-start-column 57))))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]