vlc/extras/analyser/emacs.init

99 lines
3.1 KiB
Plaintext

;;---------------------------------------------------------------------------
;;
;; Emacs-Options for Videolan CodingStyle programming
;;
;; paste the following lines in your .emacs file
;;
;;---------------------------------------------------------------------------
;; associate c-mode with file extension '.c' or '.h' in vlc trunk tree
(setq auto-mode-alist
(append
'((".*vlc-trunk.*/.*\\.[ch]$" . c-mode)
) auto-mode-alist))
;; define videolan c style settings
(defconst videolan-c-style
'((c-tab-always-indent . t)
(c-comment-only-line-offset . 4)
(c-hanging-braces-alist . ((substatement-open before after)
(brace-list-open)))
(c-hanging-colons-alist . ((member-init-intro before)
(inher-intro)
(case-label after)
(label after)
(access-label after)))
(c-cleanup-list . (scope-operator
empty-defun-braces
defun-close-semi))
(c-offsets-alist . ((string . -1000)
(c . c-lineup-C-comments)
(defun-open . 0)
(defun-close . 0)
(defun-block-intro . +)
(class-open . 0)
(class-close . 0)
(inline-open . 0)
(inline-close . 0)
(topmost-intro . 0)
(topmost-intro-cont . 0)
(member-init-intro . +)
(member-init-cont . 0)
(inher-intro . +)
(inher-cont . 0)
(block-open . 0)
(block-close . 0)
(brace-list-open . +)
(brace-list-close . 0)
(brace-list-intro . +)
(brace-list-entry . 0)
(statement . 0)
(statement-cont . +)
(statement-block-intro . +)
(statement-case-intro . +)
(statement-case-open . +)
(substatement . +)
(substatement-open . +)
(case-label . +)
(access-label . -)
(label . -1000)
(do-while-closure . 0)
(else-clause . 0)
(comment-intro . 0)
(arglist-intro . +)
(arglist-cont . 0)
(arglist-cont-nonempty . c-lineup-arglist)
(arglist-close . 0)
(stream-op . +)
(inclass . +)
(cpp-macro . -1000)
(friend . 0)
(objc-method-intro . 0)
(objc-method-args-cont . 0)
(objc-method-call-cont . 0)))
(c-basic-offset . 4)
(c-echo-syntactic-information-p . t)
)
"Videolan C Programming Style")
;; Customizations for c-mode
(defun videolan-mode-hook ()
;; add the Videolan c style and set it for the current buffer
(local-set-key "\r" 'newline-and-indent)
(c-add-style "vlc" videolan-c-style t)
(c-set-offset 'member-init-intro '++)
;; other customizations
(setq tab-width 4
;; this will make sure spaces are used instead of tabs
indent-tabs-mode nil)
;; we like auto-newline and hungry-delete
(c-toggle-auto-newline-state 1)
(custom-set-variables
'(c-hanging-semi&comma-criteria nil))
)
(add-hook 'c-mode-hook 'videolan-mode-hook)