linux 使用vim、ctags 配置fabric 源码阅读环境

首先需要安装 ctags,作者使用apt-get 来安装的,安装的版本是5.9

apt-get install ctags

5.9 版本的ctags 默认不支持golang 语言

ctags --list-languages  

编辑 ~/.ctags 文件,手工加上golang 语言

--langdef=Go
--langmap=Go:.go
--regex-Go=/func([ \t]+[)]+)?[ \t]+([a-zA-Z0-9_]+)/\/d,func/
--regex-Go=/var[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\/d,var/
--regex-Go=/type[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\/d,type/

然后在 fabric 上生成 tags 标签文件

cd /opt/gopath/src/github.com/hyperledger/fabric
ctags -R *

将 /opt/gopath/src/github.com/hyperledger/fabric/tags 文件加入到~/.vimrc 配置文件中,以下为作者的 ~/.vimrc 内容 (注意vim 要使用tags 标签,必须要先安装 taglist.vim 插件)

:map <F5> : tabprevious<CR>
:map <F6> : tabnext<CR>
:map <F4> : tabnew .<CR>
:map <F2> : vsplit .<CR>
:map <F3> : split .<CR>
:map <F7> <C-w><C-w>
:map <C-h> : vertical res -<CR>
:map <C-l> : vertical res +<CR>
:map <C-j> : res +<CR>
:map <C-k> : res -<CR> set ruler
set tabstop=
set incsearch
set hlsearch syntax on set tags=/opt/gopath/src/github.com/hyperledger/fabric/tags
let Tlist_Ctags_Cmd='/usr/bin/ctags'
let Tlist_Auto_Open=
let Tlist_Use_Right_Window=
let Tlist_File_Fold_Auto_Close=
let Tlist_Exit_OnlyWindow=

用户设置好后,就可以对fabric 源码进行阅读了

参考博客:

https://studygolang.com/articles/198

http://blog.csdn.net/chenbaoke/article/details/50848283

https://www.cnblogs.com/yuuyuu/p/5222980.html

hyperledger fabric 1.0.5 分布式部署 (九)的更多相关文章

  1. hyperledger fabric 1.0.5 分布式部署 (八)

    gdb debug peer 程序 在开始我们从 github 上download 下来的源码包,实际上已经包含了可执行的 peer 程序,但是该程序是使用 release 方式编译的,并不支持gdb ...

  2. hyperledger fabric 1.0.5 分布式部署 (七)

    fabric 使用 fabric-ca 服务 准备部分 首先需要用户从github上download fabric-ca 的工程代码 cd $GOPATH/src/github.com/hyperle ...

  3. hyperledger fabric 1.0.5 分布式部署 (六)

    如何在相同的peer 节点上创建多个 channel 作者在hyperledger fabric 1.0.5 分布式部署 (五)已经向读者们介绍了一个简单的fabric 的部署流程,那么根据上一篇博客 ...

  4. hyperledger fabric 1.0.5 分布式部署 (五)

    梳理fabric e2e_cli 测试程序的具体步骤 作者在 hyperledger fabric 1.0.5 分布式部署 (一)中给读者们介绍了如何从零开始部署一个测试的 demo 环境,如果细心的 ...

  5. hyperledger fabric 1.0.5 分布式部署 (四)

    chaincode 的开发 作者在hyperledger fabric 1.0.5 分布式部署 (三)中向读者介绍了如何开发fabric 的chaincode,那么实际上chaincode 还有其他的 ...

  6. hyperledger fabric 1.0.5 分布式部署 (二)

    环境:2台 ubuntu 16.04 角色列表 角色 IP地址 宿主端口 docker端口  peer0.org1.example.com  47.93.249.250  7051  7051  pe ...

  7. hyperledger fabric 1.0.5 分布式部署 (三)

    本篇博客主要是向读者介绍 fabric 在部署时的一些细节,还有作者自己学习过程中的心得. 初始化相关密钥的程序,实际上是一个shell脚本,并且结构特别简单 generateArtifacts.sh ...

  8. hyperledger fabric 1.0.5 分布式部署 (一)

    环境是个人虚拟机ubuntu 16.04 64 位版本 前期用户需要先安装好:gcc.g++.git 软件 安装 golang 首先给环境安装一个 go 语言环境,版本最好在1.8 以上 golang ...

  9. Hyperledger Fabric 1.0 从零开始(十三)——orderer分布式方案

    简述 在搭建HyperLedger Fabric环境的过程中,我们会用到一个configtx.yaml文件(可参考Hyperledger Fabric 1.0 从零开始(八)——Fabric多节点集群 ...

随机推荐

  1. java图形界面设计

    1.       基本的java Frame操作. Java的图形界面的类主要包括AWT和Swing.在AWT中图形元素的父类为Component. 继承关系如下:Component->Cont ...

  2. matlab打开文件对话框

    [filename, pathname, filterindex] = uigetfile({'*.xyz', '点云文件 (*.xyz)';'*.*', 'All Files (*.*)'},'请选 ...

  3. python处理txt文件的一种情况

    在txt文本中,以换行符作为标记分段处理txt文件中的内容的方法: with open(path, 'r', encoding='utf-8') as f: for line in f: if lin ...

  4. C++中vector使用详细说明

    1. 在C++中的详细说明 vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库. vector之所以被认为是一个容器,是因为它能够像容器一样存放各 ...

  5. 程序猿老公去米国参加 WWDC,顺便想带渡老婆蜜月,如何办签证?

    这个问题要拆开描述比较好:1. 老公是苹果开发者,抽中了2014 WWDC购票机会,打算自费去参加.如果自己成行,应该办何种签证?2. 顺带,两人新婚半年还未安排蜜月,打算提前几天过去先游览一下西海岸 ...

  6. mvn使用记录

    1. mvn dependency:copy-dependencies 会导出到targed/dependency 下面 2. mvn dependency:copy-dependencies -Do ...

  7. sphinx 全文搜索引擎

    sphinx的安装与配置 --------------------------------------------------------------------------------------- ...

  8. 【Python】String 字符串

    1. split() split()通过指定分隔符对字符串进行切片,如果参数num 有指定值,则仅分隔 num 个子字符串 split()方法语法:str.split(str="" ...

  9. unicode和utf-8互转

    1.1 ASCII码 我们知道, 在计算机内部, 所有的信息最终都表示为一个二进制的字符串. 每一个二进制位(bit)有0和1两种状态, 因此八个二进制位就可以组合出 256种状态, 这被称为一个字节 ...

  10. [转]BFC 神奇背后的原理

    BFC 已经是一个耳听熟闻的词语了,网上有许多关于 BFC 的文章,介绍了如何触发 BFC 以及 BFC 的一些用处(如清浮动,防止 margin 重叠等).虽然我知道如何利用 BFC 解决这些问题, ...