ProgrammingのTipなど

emacsでのC++向け設定ファイル


これは自分用です

elファイルのgithub
https://github.com/abo-abo/function-args
https://github.com/abo-abo/swiper
https://github.com/company-mode/company-mode/tree/...


init.el
(add-to-list 'default-frame-alist '(font . "Monospace-15"))


(global-set-key (kbd "<f5>") 'speedbar-get-focus)
(global-set-key (kbd "<f6>") 'speedbar-update-contents)

(require 'cc-mode)

;; c-mode-common-hook は C/C++ の設定
(add-hook 'c-mode-common-hook
          (lambda ()
            (setq c-default-style "linux") ;; gnu, k&r, bsd, stroustrup, linux
            (setq indent-tabs-mode nil)  ;; タブは利用しない
            (setq c-basic-offset 2)      ;; indent は 2 スペース
            ))


(add-to-list 'load-path "~/.emacs.d/swiper")
;;(ivy-mode)
(require 'ivy)
(setq ivy-use-virtual-buffers t)
(setq enable-recursive-minibuffers t)
;; enable this if you want `swiper' to use it
;; (setq search-default-mode #'char-fold-to-regexp)
(global-set-key "\C-s" 'swiper)
(setq swiper-include-line-number-in-search t) ;; line-numberでも検索可能


(add-to-list 'load-path "~/.emacs.d/function-args")
(require 'function-args)
(fa-config-default)
;;C Header as C++MODE
(add-to-list 'auto-mode-alist '("\\.h\\'" . c++-mode))
(set-default 'semantic-case-fold t)
;;add include files
(semantic-add-system-include "~/.emacs.d/targets/" 'c++-mode)
;;(semantic-add-system-include "~/usr/include/" 'c++-mode)
;;(semantic-add-system-include "~/usr/local/include/" 'c++-mode)


(add-to-list 'load-path "~/.emacs.d/company-mode")
(require 'company)
(global-company-mode) ; 全バッファで有効にする
(setq company-transformers '(company-sort-by-backend-importance)) ;; ソート順
(setq company-idle-delay 0) ; デフォルトは0.5
(setq company-minimum-prefix-length 3) ; デフォルトは4
(setq company-selection-wrap-around t) ; 候補の一番下でさらに下に行こうとすると一番上に戻る
(setq completion-ignore-case t)
(setq company-dabbrev-downcase nil)
(global-set-key (kbd "C-z") 'company-complete)
(define-key company-active-map (kbd "C-n") 'company-select-next) ;; C-n, C-pで補完候補を次/前の候補を選択
(define-key company-active-map (kbd "C-p") 'company-select-previous)
(define-key company-search-map (kbd "C-n") 'company-select-next)
(define-key company-search-map (kbd "C-p") 'company-select-previous)
(define-key company-active-map (kbd "C-s") 'company-filter-candidates) ;; C-sで絞り込む
(define-key company-active-map (kbd "C-i") 'company-complete-selection) ;; TABで候補を設定
(define-key company-active-map [tab] 'company-complete-selection) ;; TABで候補を設定
(define-key company-active-map (kbd "C-f") 'company-complete-selection) ;; C-fで候補を設定
(define-key emacs-lisp-mode-map (kbd "C-M-i") 'company-complete) ;; 各種メジャーモードでも C-M-iで company-modeの補完を使う

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

Menu

メニュー2

開くメニュー

閉じるメニュー

  • アイテム
  • アイテム
  • アイテム
【メニュー編集】

管理人/副管理人のみ編集できます