# HG changeset patch # User Gerd Moellmann # Date 964436975 0 # Node ID 7b0a7b155fe239fefbdc2bc02623ace41fd13dac # Parent dde5ab185aada6a8ab7568fc632329b876f334c4 (c-style-variables-are-local-p): Incompatible change by defaulting this to t. It's motivated by the confusing behavior that otherwise arise from the style system when editing both java and non-java files at the same time (see the comments about style setting in c-common-init). (c-offsets-alist): Changed default for member-init-cont to c-lineup-multi-inher since it now handles member initializers and indents better for leading commas. (c-syntactic-indentation): New variable to turn off all syntactic indentation. (c-special-indent-hook): Don't use set-from-style on this. diff -r dde5ab185aad -r 7b0a7b155fe2 lisp/progmodes/cc-vars.el --- a/lisp/progmodes/cc-vars.el Mon Jul 24 11:07:23 2000 +0000 +++ b/lisp/progmodes/cc-vars.el Mon Jul 24 11:09:35 2000 +0000 @@ -1,8 +1,9 @@ ;;; cc-vars.el --- user customization variables for CC Mode -;; Copyright (C) 1985,1987,1992-1999 Free Software Foundation, Inc. +;; Copyright (C) 1985,1987,1992-2000 Free Software Foundation, Inc. -;; Authors: 1998-1999 Barry A. Warsaw and Martin Stjernholm +;; Authors: 2000- Martin Stjernholm +;; 1998-1999 Barry A. Warsaw and Martin Stjernholm ;; 1992-1997 Barry A. Warsaw ;; 1987 Dave Detlefs and Stewart Clamen ;; 1985 Richard M. Stallman @@ -156,7 +157,9 @@ :group 'c) (defcustom-c-stylevar c-basic-offset 4 - "*Amount of basic offset used by + and - symbols in `c-offsets-alist'." + "*Amount of basic offset used by + and - symbols in `c-offsets-alist'. +Also used as the indentation step when `c-syntactic-indentation' is +nil." :type 'integer :group 'c) @@ -185,12 +188,26 @@ :group 'c) (defcustom c-insert-tab-function 'insert-tab - "*Function used when inserting a tab for \\[TAB]. + "*Function used when inserting a tab for \\[c-indent-command]. Only used when `c-tab-always-indent' indicates a `real' tab character should be inserted. Value must be a function taking no arguments." :type 'function :group 'c) +(defcustom c-syntactic-indentation t + "*Whether the identation should be controlled by the syntactic context. + +If t, the indentation functions indents according to the syntactic +context, using the style settings specified by `c-offsets-alist'. + +If nil, every line is just indented to the same level as the previous +one, and the \\[c-indent-command] command adjusts the indentation in steps +specified by `c-basic-offset'. The indentation style have no effect +in this mode, nor any of the indentation associated variables, +e.g. `c-special-indent-hook'." + :type 'boolean + :group 'c) + (defcustom-c-stylevar c-comment-only-line-offset 0 "*Extra offset for line which contains only the start of a comment. Can contain an integer or a cons cell of the form: @@ -509,7 +526,7 @@ :type '(radio (string :tag "Style in all modes (except Java)") (repeat :tag "Mode-specific styles" - :value ((other . "user")) + :value ((other . "gnu")) (cons :format "%v" (choice :tag "Mode" (const c-mode) (const c++-mode) @@ -555,7 +572,7 @@ ;; Relpos: Boi at the topmost intro line. (member-init-intro . +) ;; Relpos: Boi at the func decl arglist open. - (member-init-cont . 0) + (member-init-cont . c-lineup-multi-inher) ;; Relpos: Beg of the first member init. (inher-intro . +) ;; Relpos: Java: Boi at the class decl start. Otherwise: Boi @@ -628,20 +645,23 @@ (comment-intro . c-lineup-comment) ;; Relpos: None. (arglist-intro . +) - ;; Relpos: Boi at the open paren. + ;; Relpos: Boi at the open paren, or at the first non-ws after + ;; the open paren of the surrounding sexp, whichever is later. (arglist-cont . 0) ;; Relpos: At the first token after the open paren. (arglist-cont-nonempty . c-lineup-arglist) - ;; Relpos: Boi at the open paren. + ;; Relpos: Boi at the open paren, or at the first non-ws after + ;; the open paren of the surrounding sexp, whichever is later. (arglist-close . +) - ;; Relpos: Boi at the open paren. + ;; Relpos: Boi at the open paren, or at the first non-ws after + ;; the open paren of the surrounding sexp, whichever is later. (stream-op . c-lineup-streamop) ;; Relpos: Boi at the first stream op in the statement. (inclass . +) ;; Relpos: At the class open brace if it's at boi, otherwise ;; boi at the class decl start. (cpp-macro . -1000) - ;; Relpos: Boi. + ;; Relpos: None. (cpp-macro-cont . c-lineup-dont-change) ;; Relpos: At the macro start (always at boi). (friend . 0) @@ -826,7 +846,7 @@ (get 'c-offsets-alist 'c-stylevar-fallback))) :group 'c) -(defcustom c-style-variables-are-local-p nil +(defcustom c-style-variables-are-local-p t "*Whether style variables should be buffer local by default. If non-nil, then all indentation style related variables will be made buffer local by default. If nil, they will remain global. Variables