Emacs: some cc abbrevs

master
Pierre Neidhardt 2014-02-13 15:56:13 +01:00
parent f14abcbdf8
commit 9f76a23790
5 changed files with 63 additions and 47 deletions

View File

@ -5,9 +5,15 @@
(define-abbrev-table 'awk-mode-abbrev-table '())
(define-abbrev-table 'c++-mode-abbrev-table '())
(define-abbrev-table 'c++-mode-abbrev-table
'(
))
(define-abbrev-table 'c-mode-abbrev-table '())
(define-abbrev-table 'c-mode-abbrev-table
'(
("printf" "" snip-cc-printf 0)
("for" "" snip-cc-for 0)
))
(define-abbrev-table 'comint-mode-abbrev-table '())
@ -15,10 +21,14 @@
(define-abbrev-table 'docTeX-mode-abbrev-table '())
(define-abbrev-table 'emacs-lisp-byte-code-mode-abbrev-table '())
(define-abbrev-table 'emacs-lisp-mode-abbrev-table '())
(define-abbrev-table 'fundamental-mode-abbrev-table '())
(define-abbrev-table 'gfm-mode-abbrev-table '())
(define-abbrev-table 'global-abbrev-table '())
(define-abbrev-table 'help-mode-abbrev-table '())
@ -29,6 +39,10 @@
(define-abbrev-table 'lisp-mode-abbrev-table '())
(define-abbrev-table 'lua-mode-abbrev-table '())
(define-abbrev-table 'markdown-mode-abbrev-table '())
(define-abbrev-table 'objc-mode-abbrev-table '())
(define-abbrev-table 'occur-edit-mode-abbrev-table '())
@ -39,6 +53,8 @@
(define-abbrev-table 'pike-mode-abbrev-table '())
(define-abbrev-table 'po-mode-abbrev-table '())
(define-abbrev-table 'process-menu-mode-abbrev-table '())
(define-abbrev-table 'prog-mode-abbrev-table '())
@ -51,6 +67,8 @@
(define-abbrev-table 'special-mode-abbrev-table '())
(define-abbrev-table 'tabulated-list-mode-abbrev-table '())
(define-abbrev-table 'text-mode-abbrev-table
'(
("ac" "avec" nil 0)
@ -173,7 +191,6 @@
("pcq" "parce que" nil 3)
("pdt" "pendant" nil 2)
("pe" "peut-être" nil 2)
("pe" "peut-être" nil 2)
("pgrm" "program" nil 1)
("pgrms" "programs" nil 1)
("plsu" "plus" nil 3)
@ -219,6 +236,8 @@
("ê" "être" nil 1)
))
(define-abbrev-table 'vc-git-log-edit-mode-abbrev-table '())
(define-abbrev-table 'vc-git-log-view-mode-abbrev-table '())
(define-abbrev-table 'vc-svn-log-view-mode-abbrev-table '())

View File

@ -402,3 +402,5 @@ suitable for creation"
(and looping (not (equal current-dir "/")))))
(if (equal current-dir "/") nil (expand-file-name makefile current-dir))))
(provide 'functions)

View File

@ -40,11 +40,12 @@ Example: to assign some-function to C-i, use
(load "functions" nil t)
(load "personal" nil t)
(load "snippets" nil t)
;; (load "snippets" nil t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Modes config
;; (load "mode-cc")
(add-hook 'c-mode-hook (lambda () (require 'mode-cc)))
(add-hook 'c++-mode-hook (lambda () (require 'mode-cc)))
(add-hook 'dot-mode-hook (lambda () (require 'mode-dot)))

View File

@ -310,8 +310,11 @@
(cons '("(gmp)Function Index" nil "^ -.* " "\\>")
(nth 3 mode-value)))))
;; Do not expand abbrevs in skeletons. Not sure it is useful.
;; (setq skeleton-further-elements '((abbrev-mode nil)))
;; (setq skeleton-end-hook nil)
;; Bookmark file to cache folder
;; Bookmark file to cache folder.
(setq bookmark-default-file (concat emacs-cache-folder "emacs.bmk"))
;; Disable prompt (but leave warning) on git symlink.

View File

@ -53,24 +53,21 @@ restored."
;; C-mode
;;==============================================================================
;; Identation style
(setq c-default-style "linux" c-basic-offset 4)
(mapcar
(lambda (mode-hook)
(add-hook
mode-hook
(lambda ()
;; Identation style
(setq c-default-style "linux" c-basic-offset 4)
(add-hook
'c-mode-hook
(lambda ()
(cc-set-compiler)
(local-set-key (kbd "<f9>") 'cc-clean)
(local-set-key (kbd "M-TAB") 'semantic-complete-analyze-inline)
(local-set-key (kbd "C-M-e") (lambda () (interactive) (c-beginning-of-defun -1)))
;; (local-set-key "." 'semantic-complete-self-insert) ; This is a bit slow.
;; (local-set-key ">" 'semantic-complete-self-insert)
))
;;==============================================================================
;; C++-mode
;;==============================================================================
(require 'compile)
(cc-set-compiler)
(local-set-key (kbd "<f9>") 'cc-clean)
(local-set-key (kbd "M-TAB") 'semantic-complete-analyze-inline)
;; (local-set-key "." 'semantic-complete-self-insert) ; This is a bit slow.
;; (local-set-key ">" 'semantic-complete-self-insert)
(local-set-key (kbd "C-M-e") (lambda () (interactive) (c-beginning-of-defun -1))))))
'(c-mode-hook c++-mode-hook))
;; TODO: test this!
;; (defun vlad-cc-style()
@ -87,14 +84,6 @@ restored."
;; )
;; (add-hook 'c++-mode-hook 'vlad-cc-style)
(add-hook
'c++-mode-hook
(lambda ()
(cc-set-compiler)
(local-set-key (kbd "<f9>") 'cc-clean)
(local-set-key (kbd "C-M-e") (lambda () (interactive) (c-beginning-of-defun -1)))
(local-set-key (kbd "M-TAB") 'semantic-complete-analyze-inline)))
;;==============================================================================
;; Qt semantic support
;;==============================================================================
@ -118,28 +107,30 @@ restored."
;; Skel
;;==============================================================================
;; TODO: elements: (setq skeleton-further-elements '((q "\"")))
(add-hook
'c++-mode-hook
(lambda ()
(define-skeleton snip-print
"fprintf/printf snippet
(define-skeleton snip-cc-print
"fprintf/printf snippet
If no file descriptor is provided, switch do printf. The format
string is properly parsed (%% are not taken into account).
Requires the `count-percents' function."
nil
'(setq v1 (skeleton-read "File desc: " "stdout"))
(if (string= v1 "") "printf (" (concat "fprintf (" v1 ", "))
"\"" (setq v1 (skeleton-read "Format string: " "%s\\n")) "\""
'(setq v2 (count-percents v1))
'(setq v1 0)
'(while (< v1 v2)
(setq v1 (1+ v1))
(skeleton-insert '(nil (concat ", " (skeleton-read "Value: ")))))
");")
nil
'(setq v1 (skeleton-read "File desc: " "stderr"))
(if (string= v1 "") "printf (" (concat "fprintf (" v1 ", "))
"\"" (setq v1 (skeleton-read "Format string: " "%s\\n")) "\""
'(setq v2 (count-percents v1))
'(setq v1 0)
'(while (< v1 v2)
(setq v1 (1+ v1))
(skeleton-insert '(nil (concat ", " (skeleton-read "Value: ")))))
");")
))
(define-skeleton snip-cc-for
"for loop."
nil
> "for (" (skeleton-read "" "i = 0") "; " (skeleton-read "" "i < N") "; " (skeleton-read "" "i++") ")" \n
> "{" \n
> _ \n
"}" >)
(provide 'mode-cc)