 were previously shown."
   :type 'string
   :group 'jail-windows)
+(defcustom jail-windows-deactivate-on-delete-others t
+  "Flag to indicate whether jail-windows-mode should automatically deactive
+when function `delete-other-windows' is called interactively."
+  :type 'boolean
+  :group 'jail-windows)
 (defcustom jail-windows-repeat-minimum-horz 45
-  "TODO"
+  "The minimum number of characters that would be left after a horizontal split
+before `jail-windows/activate-layout' will allow a repeated horizontal split."
   :type 'integer
   :group 'jail-windows)
 (defcustom jail-windows-repeat-minimum-vert 3
-  "TODO"
+  "The minimum number of lines that would be left after a vertical split before
+`jail-windows/activate-layout' will allow a repeated vertical split."
   :type 'integer
   :group 'jail-windows)
 (defcustom jail-windows-choose-window-actions

        ;; Don't alter available windows if the group is missing either
        ;; matchers or windows
        (when (and (< 0 (-count #'window-live-p .windows))
                   (< 0 (--count t .matchers)))
          ;; Check if this group matches against the buffer
          (if (let ((-compare-fn #'jail-windows--group-buffer-compare-fn))

;;; Customization
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defgroup jail-windows nil
  "Jail-windows is a mode for attempting to maintain a consistent window layout
while working within Emacs. This does not directly prevent creation of new
windows or deletion of existing windows; instead, it offers a framework for
defining layout and window selection rules."
  :group 'windows)
(defcustom jail-windows-register-builtin-layouts t
  "Flag to determine whether jail-windows-mode should automatically register
