我的Emacs配置文件(Linux)

此博文不再更新,请移歩:https://github.com/visayafan/emacs;(set-default-font "-microsoft-MS Reference Sans Serif-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1");(set-default-font " -unknown-DejaVu San
摘要由CSDN通过智能技术生成

此博文不再更新,请移歩:https://github.com/visayafan/emacs



;(set-default-font "-microsoft-MS Reference Sans Serif-normal-normal-normal-*-13-*-*-*-m-0-iso10646-1")
;(set-default-font " -unknown-DejaVu Sans-normal-normal-normal-*-13-*-*-*-*-0-iso10646-1")
(add-to-list 'load-path "~/.emacs.d")      
(tool-bar-mode nil)    
(menu-bar-mode t)
(load-file "~/.emacs.d/cedet-1.0/common/cedet.el")    
;; (semantic-load-enable-minimum-features)
(semantic-load-enable-code-helpers)
;; (semantic-load-enable-guady-code-helpers)
;; (semantic-load-enable-excessive-code-helpers)
(semantic-load-enable-semantic-debugging-helpers)
;; Enable EDE (Project Management) features
(global-ede-mode 1)
;; Enable EDE (Project Management) features
(global-ede-mode 1)
;; Enable source code folding
(global-semantic-tag-folding-mode 1)
(define-key semantic-tag-folding-mode-map (kbd "C-c , -") 'semantic-tag-folding-fold-block)
(define-key semantic-tag-folding-mode-map (kbd "C-c , =") 'semantic-tag-folding-show-block)
(define-key semantic-tag-folding-mode-map (kbd "C-c . -") 'semantic-tag-folding-fold-all)
(define-key semantic-tag-folding-mode-map (kbd "C-c . =") 'semantic-tag-folding-show-all)

;; 括号自动匹配
(require 'autopair)
(autopair-global-mode) ;; to enable in all buffers

;; 将buffer转化为html文件,保持颜色不变
(require 'htmlize)

;; 显示行号
(require 'linum)
(global-linum-mode 1)

;; 标签
(require 'tabbar)
(tabbar-mode)
(global-set-key (kbd "M-P") 'tabbar-backward-group)   0
(global-set-key (kbd "M-N") 'tabbar-forward-group)
(global-set-key (kbd "M-p") 'tabbar-backward)
(global-set-key (kbd "M-n") 'tabbar-forward)

;; 切换buffer,寻找文件
(require 'ido)
(ido-mode t)

;; 最近访问过的文件和最近修改过的文件
(require 'session)
(add-hook 'after-init-hook 'session-initialize)

;; kill-ring 方便粘贴。
(require 'browse-kill-ring)
(global-set-key [(control c)(k)] 'browse-kill-ring)
(browse-kill-ring-default-keybindings)

;; 替换自带的切换Buffer功能
(require 'ibuffer)
(global-set-key (kbd "C-x C-b") 'ibuffer)

;; 高亮当前行:hi-line.el,emacs自己带的
(require 'hl-line)
(global-hl-line-mode t)

;; 应该是Chrome用的吧?
(require 'edit-server)
(edit-server-start)

;; 设置光标为竖线
;; (setq-default cursor-type 'bar) 

;; 光标禁止闪烁-1 光标闪烁1
(blink-cursor-mode 1)

(add-hook 'c-mode-hook 'hs-minor-mode)
(add-hook 'C++-mode-hook 'hs-minor-mode)
(add-hook 'lisp-mode-hook 'hs-minor-mode)
(add-hook 'html-mode-hook 'hs-minor-mode)
(global-set-key "\C-cha" 'hs-hide-all)
(global-set-key "\C-cas" 'hs-show-all)
(global-set-key "\C-chb" 'hs-hide-block)
(global-set-key "\C-cbs" 'hs-show-block)
(global-set-key "\C-chl" 'hs-hide-level)
;; hide-region
(require 'hide-region)
(global-set-key (kbd "C-c h r") 'hide-region-hide)
(global-set-key (kbd "C-c s r") 'hide-region-unhide)
;; hide lines
(require 'hide-lines)
(global-set-key (kbd "C-c h L") 'hide-lines)
(global-set-key (kbd "C-c s l") 'show-all-invisible)
(global-set-key (kbd "C-c m l") 'list-matching-lines)

;; 返回最近修改的地方
(require 'goto-last-change)
(global-set-key "\C-c g l" 'goto-last-change)

;;;; sudo apt-get install cscope
(require 'xcscope)    
(setq cscope-do-not-update-database t)
(add-hook 'c-mode-hook (function cscope:hook)) 
(add-hook 'c++-mode-hook (function cscope:hook)) 
(add-hook 'dired-mode-hook (function cscope:hook)) 
                                        ;(define-key global-map (kbd "C-c s a")  'cscope-set-initial-directory)
(define-key global-map (kbd "C-c s A")  'cscope-unset-initial-directory)
(define-key global-map (kbd "C-c s s ")  'cscope-find-this-symbol)
(define-key global-map (kbd "C-c s d")  'cscope-find-global-definition)
(define-key global-map (kbd "C-c s G")  'cscope-find-global-definition-no-prompting)
(define-key global-map (kbd "C-c s u")  'cscope-pop-mark)
(define-key global-map (kbd "C-c s n")  'cscope-next-symbol)
(define-key global-map (kbd "C-c s N")  'cscope-next-file)
(define-key global-map (kbd "C-c s p")  'cscope-prev-symbol)
(define-key global-map (kbd "C-c s P")  'cscope-prev-file)
(define-key global-map (kbd "C-c s b")  'cscope-display-buffer)
;; (define-key global-map (kbd "C-c s ")' cscope-display-buffer-toggle)
;; 显示被一个输入函数调用的所有函数。
(define-key global-map (kbd "C-c s c")  'cscope-find-functions-calling-this-function)
;; 显示被输入函数调用的所有函数
(define-key global-map (kbd "C-c s C")  'cscope-find-called-functions)
(define-key global-map (kbd "C-c s f")  'cscope-find-this-file);
;; Find files #including a file.
(define-key global-map (kbd "C-c s i")  'cscope-find-files-including-file)
;; Find egrep pattern
(global-set-key (kbd "C-c s e") 'cscope-find-egrep-pattern)
;; Find text string;
(global-set-key (kbd "C-c s t") 'cscope-find-this-text-string)

(require 'yasnippet-bundle)
(setq yas/root-directory "~/.emacs.d/snippets")                                                            (yas/load-directory yas/root-directory)
(put 'dired-find-alternate-file 'disabled nil)
(require 'dired-x) ; 有些特殊的功能

;;括号匹配时显示另外一边的括号,而不是烦人的跳到另一个括号。
(setq show-paren-style 'parentheses)
;;把缺省的 major mode 设置为 text-mode, 而不是几乎什么功能也 没有的 fundamental-mode.
(show-paren-mode t)
(mouse-avoidance-mode 'animate)
;;进行语法加亮。
(global-font-lock-mode t)
;;设置有用的个人信息
(setq user-full-name "visaya fan")
(setq user-mail-address "visayafan[AT]gmail.com")
;;让 dired 可以递归的拷贝和删除目录。
(setq dired-recursive-copies 'top)
(setq dired-recursive-deletes 'top)
(setq visible-bell t)
;; 高亮显示选择区域
(setq transient-mark-mode t)
;; 设置tab为4个空格的宽度,而不是原来的2
(setq c-basic-offset 4)
(setq default-tab-width 4)
(setq-default indent-tabs-mode nil)
;; 打开图片显示功能
(auto-image-file-mode t)
;;页面平滑滚动, scroll-margin 3 靠近屏幕边沿3行时开始滚动,可以很好的看到上下文。
(setq scroll-margin 3
      scroll-conservatively 10000)
;;; hippie-expa
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值