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. JAVA实验一20145315

    JAVA实验一实验报告 实验名称 Java开发环境的熟悉 实验内容 1.使用JDK编译.运行简单的Java程序: 2.使用IDEA 编辑.编译.运行.调试Java程序. 实验知识点 JVM.JRE.J ...

  2. git使用合集

    1.git 克隆时重命名本地文件夹或目录 如:git clone https://github.com/torvalds/linux.git linux_kernel 2.git查看tag git t ...

  3. noip 2018 D1T3 赛道修建

    noip 2018 D1T3 赛道修建 首先考虑二分答案,这时需要的就是对于一个长度求出能在树中选出来的最多的路径条数.考虑到一条路径是由一条向上的路径与一条向下的路径构成,或者仅仅是向上或向下的路径 ...

  4. IPv4数据报格式

    网络层的分组为数据报,数据报为首部和数据两部分组成,如下图所示. 首部的长度是以4个字节为单位,长度可以是20-60字节,这跟首部的HLEN字段有关. 版本: 这个4位字段定义了IP协议的版本,目前主 ...

  5. 分布式缓存--系列1 -- Hash环/一致性Hash原理

    当前,Memcached.Redis这类分布式kv缓存已经非常普遍.从本篇开始,本系列将分析分布式缓存相关的原理.使用策略和最佳实践. 我们知道Memcached的分布式其实是一种“伪分布式”,也就是 ...

  6. 使用 if 表达式

    由于 if 本质上是一个原函数,它的返回值就是满足条件分支表达式的值,因此,if 表达式也可以用作内联函数.我们以 check_positive( )为例进行说明.尽管条件表达式中不另写 return ...

  7. CSS 列表样式详解

    CSS列表用于前端的列表排列. CSS列表属性作用如下: 设置不同的列表项标记为有序列表 设置不同的列表项标记为无序列表 设置列表项标记为图像 列表 在HTML中,有两种类型的列表: 无序列表 - 列 ...

  8. Intellij Idea 将java项目打包成jar

    1.菜单:File->project stucture 2.在弹窗最左侧选中Artifacts->"+",选jar,选择from modules with depend ...

  9. 001——php字符串中的字符串定义

    <?php /** * 一.定义字符串: * ''单引号 ""双引号 <<<定界符 */ /* $url='http://baidu.com'; $baid ...

  10. POJ 1797 kruskal 算法

    题目链接:http://poj.org/problem?id=1797 开始题意理解错.不说题意了. 并不想做这个题,主要是想测试kruskal 模板和花式并查集的正确性. 已AC: /* 最小生成树 ...