一、需求 一个代码片段管理工具所需要的基本功能大概包括:支持多语言的高亮能够保存对代码的说明支持TAG标签有方便的查询功能 而Emacs的Org-mode恰好能够完美的支持上面这些需求.二、实现 (defvar mode-file-map '
Vim实用技巧Table of Contents1. Vim决问题的方式2. 普通模式3. 插入模式4. 可视模式5. 命令行模式5.1. 操作文本的Ex命令5.2. range服务说明5.3. 补全5.4. 命令行窗口–使用vim的编辑能力编辑Ex命令5.5. 执行外部命令6. 管理多个文件6.1. 缓冲区列表管理6.2. 参数列表6.3. 窗口操作6.4. 标签页操作7. 打开及保存文件7.1
12 Org Gamification 游戏化是一个很火的概念,Org-mode是一个实现GTD的极好工具,将两者结合起来想必非常有趣.下面就是一个简单的对Org-mode游戏化的尝试,主要就是通过完成任务赚取积分,用然后用积分购买奖励物品.1 积分操作完成任务可以获取到积分,默认情况下[#A]级任务增加30积分,[#B]级任务增加20积分,[#C]级任务增加10积分.但可以通过为每个entry设
这是一本关于投资的方法论的书籍,该方法论应该说已经在市场化的投资环境中经过了验证,但适不适合用在中国这种市场化不完善的环境中,还未为可知.
localtimelocaltime返回一个指向静态变量的指针,这样是线程不安全的,使用localtime_r代替STL中的容器类STL容器只保证线程读安全,不保证线程写安全strtok应用函数初次调用strtok时传递一个字串的地址,比如”aaa.bbb.dddd”,并将字串的地址保存在自己的静态变量中,当你将来再次调用strtok并传递NULL时(strtok的特殊用法,第二次调用时字串传NU
cppcheck使用指南Table of Contents1 cppcheck简介2 cppcheck使用3 cppcheck与其他软件的整合3.1 与VisualStudio的配合3.2 与TortoiseSVN配合1 cppcheck简介cppcheck是一个静态代码检查工具,支持c/ c++代码;作为编译器的一种补充检查,cppcheck对产品的源代码执行严格的逻辑检查。执行的检查包括:自动
html-mode如何删除tag将光标放到要删除的tag上,按C-c C-d,则会把开始和结束标签都删掉. 需要注意的是,如果HTML tag不匹配的话,可能会删错开始/结束tag如何将光标跳转到tag的开始标签或结束标签处C-c C-f(sgml-skip-tag-forward) / C-c C-b (sgml-skip-tag-backward)如何预览编辑html的效果C-c C-v(br
执行shell命令shell-command(M-!)若调用的shell命令输出不多,则直接输出在echo area,否则会输出到*Shell Command Output* buffershell命令stderr输出默认被重定向到stdout输出到*Shell Command Output* buffer. 你也可以通过设定变量`shell-command-default-error-buff
occur mode若只是需要在Emacs所打开的buffer中查询某字段,则occur命令一个对GNU grep的很好的替代.occur命令M-x occur会让你输入一个正则表达式,然后在 当前buffer 中进行内容匹配,在Occur Output buffer中显示匹配正则表达式的行,并对匹配部分进行加亮处理.M-x multi-occur会让你选择要在哪些buffer中进行内容匹配M-x
网络工具封装CommandDescriptionifconfig and ipconfigRuns ifconfig or ipconfigiwconfigRuns the iwconfig toolnetstatRuns the netstat toolarpRuns the arp toolrouteRuns the route tooltracerouteRuns the tracerout
ielmielm是一个Emacs自带的elisp REPL环境. 它继承自comint-mode,因此也就拥有了comint-mode的那些特性,比如命令历史,tab补全等等.启动M-x ielm绑定working buffer所谓working buffer就是一个特殊的buffer,你在ielm上执行的命令就好像是在该buffer上执行命令一样. 通过绑定working buffer,可用在i
Hi-Lock mode相关命令 #+CAPTION:键绑定Key bindingCommand NameDescriptionM-s h lhighlight-lines-matching-regexpHighlights all lines matching a regular expressionM-s h phighlight-phraseHigh
排序命令默认情况下Emacs排序时是大小写敏感的,要让Emacs排序时忽略大小写,需要设置变量`sort-fold-case`为tsort-lines按字典顺序对行进行排序sort-regexp-fields通过该命令,你可以只对一行的某个部分进行排序,而剩下的部分还保留原顺序.该命令首先提示你输入一个正则表达式用于标明哪些部分的内容参与排序,该正则表达式被称为record regexp,Emac
行操作list-matching-lines列出当前文件内容中符合条件正则的文本行multi-occur列出所有buffer中符合条件正则的文本行delete-matching-lines删除当前文件内容中符合条件正则的文本行delete-non-matching-lines删除当前文件内容中不符合条件正则的文本行sort-linessort-numeric-fieldsreverse-regio
关于窗口操作更改窗口大小的那些操作CommandKeyPurposeenlarge-window【Ctrl+x ^】increase heightshrink-window◇decrease heightenlarge-window-horizontally【Ctrl+x }】increase widthshrink-window-horizontally【Ctrl+x {】decrease wi
re-builderre-builder是一个可用让你交互式创建正则表达式的工具. 当你在re-builder中修改正则表达式时,会动态的在buffer中用高亮显示出正则表达式的匹配范围.re-builder支持多种格式的正则(但不支持PCRE).启动re-builderM-x re-builder设置正则格式通过设置变量`reb-re-syntax`可用设置re-builder解析的正则表达式的
关于括号如何自动插入双括号开启`electric-pair-mode`这个minor mode后,插入左括号会自动补全右括号, 而删除一方括号不会删除另一个.(electric-pair-mode 1)默认补全的括号与各个major-mode的syntax table有关(可用通过describe-syntax查看). 要定义自己的括号列表可用编辑`electric-pair-pairs
ido-mode1 启动ido-mode添加如下配置(setq ido-enable-flex-matching t) (setq ido-use-filename-at-point 'guess) (setq ido-everywhere t)  
org-page使用到了org-table-beign函数,因此使用org-page前需要先(require 'org-table)在配置 op/category-config-alist时category不能带中文名称org-page使用了命令"git ls-tree -r --name-only"命令,该命令有时候不能正确显示中文名,这时候org-page会把中文的org文件忽略掉.
1vector的使用我们只可以使用operator[]和at()去改动那些已经存在于容器中的东西. 而 用reserve()函数不会使得容器中充满函数,需要用resize()函数代替当不对容器内的元素做任何改动时,记得使用const_iterator2关于标准成员函数C++标准库的实现中的成员函数签名并不要求与标准中说明的函数签名一模一样,它可以具有额外的默认函数. 这意味着,不同的标准库的成员函
1. commit和rollback操作会让游标close掉,除非open的时候使用hold方式打开和使用游标2. close掉cursor之后不用free cursor,但是close allcator之后要记得free allocator
1 什么是Eshell? Eshell是Emacs完全用Elisp实现的类UNIX shell. 由于它完全是由Elisp实现的,因此它具有与Emacs相同的可移植性,而且它可以很自然的与Elisp代码相结合. 事实上,你完全可以在Eshell下运行lisp代码2 Eshell与普通shell有什么不同?Eshell支持输出重定向但不支持输入重定向Eshell没有job control
C++标准中fopen函数的mode只有r,r+,w+,a,a+这几种类别,而没有rw这种类别. 如果尝试对用rw方式打开文件进行写操作,不同的编译器会有不同的处理方式.例如在linux下用gcc4.6.3把rw当成r来处理,会提示bad file descriptor在windows下用dev C++则只是将写文件函数返回失败,但是没有设置errno根据百度百科的说明,还有些编译器则能够把rw识
1Git基础说明1.1Git与subversion的区别Git只关注文件数据的整体内容是否发生改变,而不关心文件内容的具体差异Git是分布式的版本控制系统,因此大多数的操作不需要网络环境所有保存在Git数据库中的东西都是通过对内容的SHA-1计算的hash值作为索引而不是靠文件名当把本地工作推送到服务器上时,Git必须服务器上的更新合并到本地后才能推送,而Subversion会在服务器端自动合并提
第一步. 开启semantic-modeM-x semantic-mode第二步. 引入srecodeM-: (require 'srecode)第三布. 开启srecode-minor-modeM-x srecode-minor-mode第四步. 将光标移动到函数定义头上第五部. 执行命令srecode-document-insert-function-commentM-x srecode-do
1. 理解C语言声明的规则声明从它的名字开始读取,然后按照优先级顺序以此读取优先级从高到低依次是:声明中被括号扩起来的那部分后缀操作符括号()表示这是一个函数放括号[]表示这是一个数组前缀参数操作符星号*表示指向…的指针如果const和volatile关键字的后面紧跟着类型说明符(如int,long),那么 它作用于类型说明符. 其他情况下,从const和volatile关键字作用于它左 侧紧邻的
1 语法陷阱1.1 理解函数声明任何C变量的声明都由两部分组成:类型及一组类似表达式的声明符(declarator). 这个declarator的求值应该返回这个声明中的类型. 例如float *(g()); /* 这里*(g())的求值结果应该是一个float,即g是一个函数,该函数返回float指针 */ float (*h)();
F5基础
1Web的结构组件1.1代理代理位于客户端和服务端之间,接受所有客户端的HTTP请求,并将这些请求转发给服务器(可能会对请求进行修改)1.2缓存将经过代理传送的常用文档保存起来,供下次请求时传送1.3网关网管请求时就好像自己是资源的源端服务器一样,客户端可能并不知道自己正在跟一个网管进行通信. 通常用于将HTTP转换成其他协议.1.4隧道用于通过HTTP协议传送其他协议的数据包1.5Agent代理
1 Awesome简介Awesome window manager是一款小巧的平铺式窗口管理器,它具有以下一些特点体积小,运行迅速。支持多种窗口布局。使用Lua脚本的配置文件使得它的灵活性非常高。更新迅速。多显示器支持。2 概念说明2.1 平铺式窗口管理简单来说就是多个窗口由操作系统自动调节和位置,使得它们刚好能够占满整个屏幕。2.2 标签(Tag)启动awesome之后出现在左上方的数字就是ta
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号