emacsConfig下建立install目录,结构大概这样

.
├── auto-complete-etags-setting.el
├── auto-complete-setting.el
├── auto-complete-yasnippet-setting.el
├── autopair-setting.el
├── buffer-setting.el
├── clang-complete-async-setting.el
├── code-style-setting.el
├── dir-setting.el
├── etags
│   ├── kernel
│   ├── muduo
│   └── qt
├── etags-select-setting.el
├── evil-setting.el
├── gdb-setting.el
├── gtags
│   └── muduo
│   ├── GPATH
│   ├── GRTAGS
│   ├── GSYMS
│   └── GTAGS
├── gtags-setting.el
├── imenu-tree-setting.el
├── install
│   ├── imenu-tree-install
│   │   ├── install.sh
│   │   ├── patch
│   │   │   └── imenu-tree.el
│   │   └── readme
│   ├── _init.el_
│   ├── install.sh
│   ├── readme
│   ├── recipes
│   │   └── clang-complete-async.rcp
│   └── remove.sh
├── kbd-mouse-setting.el
├── monokai-theme.el
├── original-tags.el
├── php-setting.el
├── snippets
│   ├── custom
│   └── yas-git
├── speedbar-setting.el
├── switch-file-setting.el
├── tabbar-setting.el
├── ui-setting.el
└── window-setting.el

_init.el_

 (add-to-list 'load-path "~/.emacs.d/el-get/el-get")

 (unless (require 'el-get nil 'noerror)
(with-current-buffer
(url-retrieve-synchronously
"https://raw.github.com/dimitri/el-get/master/el-get-install.el")
(goto-char (point-max))
(eval-print-last-sexp))) (add-to-list 'el-get-recipe-path "~/.emacs.d/el-get-user/recipes")
(el-get 'sync) ;不知道为什么,按照文档的设置无效,那么,就用我自己的吧
;(setq el-get-user-package-directory "~/.emacs.d/el-get-init-files/") ;------------------------------------------------------------------------------
;设置扩展文件所在目录
(add-to-list 'load-path "~/emacsConfig") ;逐个装载上面目录下所有的配置文件
(mapc 'load (directory-files "~/emacsConfig" t "^[a-zA-Z0-9].*.el$"))

install.sh

 mkdir -p ~/.emacs.d/el-get-user/recipes
cp ./recipes/* ~/.emacs.d/el-get-user/recipes
cp ./_init.el_ ~/.emacs.d/init.el echo "Install success!";

remove.sh

 rm -rf ~/.emacs.d

 echo "remove success!";

~/emacsConfig/install/recipes/clang-complete-async.rcp

 (:name clang-complete-async
:website "https://github.com/Golevka/emacs-clang-complete-async"
:description "An emacs extension to complete C and C++ code using libclang."
:type github
:pkgname "Golevka/emacs-clang-complete-async"
:build '(("make"))
:depends auto-complete
:features auto-complete-clang-async
:prepare (setq ac-clang-complete-executable
(expand-file-name
(concat (el-get-package-directory "clang-complete-async") "clang-complete"))))

imenu-tree注意

~/emacsConfig/install/imenu-tree-install/patch/imenu-tree.el为修改过的imenu-tree.el

~/emacsConfig/install/imenu-tree-install/install.sh

cp patch/imenu-tree.el ~/.emacs.d/el-get/imenu-tree/imenu-tree.el

echo "imenu-tree installed with position on right!";

readme

第一次安装,需要alt+x执行安装命令
el-get-install以下几个 evil
php-mode-improved
tabbar
auto-complete
auto-complete-etags(我这边没有补全效果)
etags-select(这个比较准确,比自带的好)
auto-complete-emacs-lisp
autopair
cc-mode+
sr-speedbar
yasnippet
auto-complete-yasnippet
imenu-tree(用来显示文件内symbol的插件,下面几个都是imenu-tree需要的插件)
imenu+
tree-mode
windata gtags(安装之前需要下面的命令)
debian:
sudo apt-get install global
mac:
brew install global
同时,需要ln -s做几个软连接
/usr/local/bin/global连接到/usr/bin
/usr/local/bin/gtags连接到/usr/bin clang-complete-async(安装之前需要下面的命令)
debian:
sudo apt-get install llvm-dev
sudo apt-get install libclang-dev mac:
brew install --with-clang --all-targets --rtti --universal --jit llvm,多点耐心,需要很久 -----------------------------------------------------------------------------
ecb:
由于method buffer的东西无法更新,因此放弃此库
----------------------------------------------------------------------------- imenu-tree
-----------------------------------------------------------------------------
安装查看install目录的imenu-tree-install子目录
----------------------------------------------------------------------------- 安装配置
auto-complete-etags etags:
生成tag:
自定义函数:generate-etags
加载tag:
自定义命令:load-etags
插件命令:visit-tags-table
查找定义:
快捷键:alt+o,d
命令:etags-select-find-tag-at-point
list-tags:
显示某个h文件内所有的tag gtags
生成tag:
自定义函数:generate-gtags
加载tag:
自定义命令:load-gtags
插件命令:gtag-visit-rootdir
查找变量引用:
快捷键:c-x,v
命令:gtags-find-symbol
查找函数引用:
快捷键:c-x,f
命令:gtags-find-rtag tag跳转:alt+enter
前进后退的快捷键为alt加方向键
F11切换h和cpp文件
ctrl+enter,打开include的头文件
F2打开speed-bar
F12打开imenu-tree 在启动就需要加载的tag需要在original-tags.el里面手工修改

emacs之配置自动安装脚本的更多相关文章

  1. mysql 自动备份和nginx自动安装脚本

    一.自动备份Mysql脚本: 如下脚本为mysql自动备份脚本,仅供参考,可以根据实际情况修改. #!/bin/sh #auto backup mysql #wugk #Define PATH定义变量 ...

  2. python3自动安装脚本,python3.x与python2.x共存

    1.前言: python3过程中,通过搜索一些文章参考安装过程发现比较麻烦,而且还出现一些不可预期的报错.python3环境需要升级openssl,所以为了部署到其他环境更方便,写自动安装脚本方式,且 ...

  3. Windows ftp脚本和RSCD agent自动安装脚本

    Windows ftp脚本 和bladelogic RSCD Agent自动安装脚本 比较简单的命令是msiexec /I "C:\RSCD85-SP1-WIN64.msi" /Q ...

  4. python第三方库自动安装脚本

    #python第三方库自动安装脚本,需要在cmd中运行此脚本#BatchInstall.pyimport oslibs = {"numpy","matplotlib&qu ...

  5. 【Devops】【docker】【CI/CD】docker启动的Jenkins容器 - 系统管理 - 全局工具配置 - 自动安装JDK、Maven、Git、Docker

    本篇适用于jenkins是启动的docker容器,自动安装JDK  Maven  Git   Docker等全局工具 ========================================= ...

  6. LAMP自动安装脚本

    #!/bin/bash # 功能描述:LAMP自动安装脚本 # 初始化 if [ "$(cat /etc/system-release | awk '{print $(NF-1)}' | a ...

  7. 转来的emacs配置文件,自动安装插件

    网上转来的emacs配置文件,便于自动安装插件,收藏起来 http://www.gogae.org/post-7/ EMACS是一个伪装成代码编辑器的操作系统. EMACS是一个非常强大的代码编辑器, ...

  8. 自动安装脚本-------------基于LVMP搭建Nagios 监控

    Mysql初始化参数(mysql-5.6.31) /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local ...

  9. hadoop自动安装脚本

    还不能实现完全自动安装,只能算半自动的. 进行交互主要障碍有两点: 1. ssh-keygen的时候需要点击回车. 2. passwd 需要设置密码  如果谁能解决以上两点,欢迎email给我. 另外 ...

随机推荐

  1. duilib : 滑动显示的窗口实现以及 悬浮窗 (转载)

    1. vc 判断窗口是否显示  BOOL IsWindowVisible(HWND hWnd); 2.悬浮窗 http://blog.csdn.net/lincyang/article/details ...

  2. Hadoop运维手记

    1.处理hadoop的namenode宕机 处理措施:进入hadoop的bin目录,重启namenode服务 操作命令:cd path/to/hadoop/bin ./hadoop-daemon.sh ...

  3. Opencv3_Learning

    git地址 采用jupyter notebook进行编程,语言为python. 感谢博主--戳 这类东西真的是不是天天打,就是打过就忘.. 有志者事竟成,破釜沉舟,百二秦关终属楚. 苦心人天不负,卧薪 ...

  4. Cache与主存地址映像计算例题

    一.全相连映像 主存中任何一个块均可以映像装入到Cache中的任何一个块的位置上.主存地址分为块号和块内地址两部分,Cache地址也分为块号和块内地址.Cache的块内地址部分直接取自主存地址的块内地 ...

  5. IIS Express 添加MIME映射

    IIS Express没有提供图形化界面来配置MIME类型,但提供了配置MIME类型的命令行工具. IIS Express中添加MIME映射.操作如下: 在DOS窗口下进入IIS Express安装目 ...

  6. c++ 列表删除元素(erase)

    #include <list> #include <iostream> #include <iterator> using namespace std; int m ...

  7. Java回顾之网络通信

    在这篇文章里,我们主要讨论如何使用Java实现网络通信,包括TCP通信.UDP通信.多播以及NIO. TCP连接 TCP的基础是Socket,在TCP连接中,我们会使用ServerSocket和Soc ...

  8. vue 脚手架(二,项目依赖说明 package.json)

    本文以转移至本人的个人博客,请多多关注! 本文以转移至本人的个人博客,请多多关注! 本文以转移至本人的个人博客,请多多关注! 本文以转移至本人的个人博客,请多多关注! 继续上一篇, 上一篇讲了 vue ...

  9. 动态规划-House Robber

    2018-04-29 20:20:56 House Robber问题是leetcode上经典的系列题,这里对其中的题目做一个讲解. 198. House Robber 问题描述: 问题求解: 本质上就 ...

  10. VS2010快捷键大全----养成良好的习惯

    VS2010版快捷键Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O ...