1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- ;;;; Emacs Lisp help for writing curl code. ;;;;
- ;;; The curl hacker's C conventions.
- ;;; See the sample.emacs file on how this file can be made to take
- ;;; effect automatically when editing curl source files.
- (defconst curl-c-style
- '((c-basic-offset . 2)
- (c-comment-only-line-offset . 0)
- (c-hanging-braces-alist . ((substatement-open before after)))
- (c-offsets-alist . ((topmost-intro . 0)
- (topmost-intro-cont . 0)
- (substatement . +)
- (substatement-open . 0)
- (statement-case-intro . +)
- (statement-case-open . 0)
- (case-label . 0)
- ))
- )
- "Curl C Programming Style")
- (defun curl-code-cleanup ()
- "no docs"
- (interactive)
- (untabify (point-min) (point-max))
- (delete-trailing-whitespace)
- )
- ;; Customizations for all of c-mode, c++-mode, and objc-mode
- (defun curl-c-mode-common-hook ()
- "Curl C mode hook"
- ;; add curl style and set it for the current buffer
- (c-add-style "curl" curl-c-style t)
- (setq tab-width 8
- indent-tabs-mode nil ; Use spaces. Not tabs.
- comment-column 40
- c-font-lock-extra-types (append '("bool" "CURL" "CURLcode" "ssize_t" "size_t" "curl_socklen_t" "fd_set" "time_t" "curl_off_t" "curl_socket_t" "in_addr_t" "CURLSHcode" "CURLMcode" "Curl_addrinfo"))
- )
- ;; keybindings for C, C++, and Objective-C. We can put these in
- ;; c-mode-base-map because of inheritance ...
- (define-key c-mode-base-map "\M-q" 'c-fill-paragraph)
- (define-key c-mode-base-map "\M-m" 'curl-code-cleanup)
- (setq c-recognize-knr-p nil)
- ;;; (add-hook 'write-file-hooks 'delete-trailing-whitespace t)
- (setq show-trailing-whitespace t)
- )
- ;; Set this is in your .emacs if you want to use the c-mode-hook as
- ;; defined here right out of the box.
- ; (add-hook 'c-mode-common-hook 'curl-c-mode-common-hook)
|