什么是cygwin?
cygwin是一个在windows平台上运行的unix模拟环境,它对于 从unix到windows的应用程序移植,或者进行某些特殊的开发工作, 尤其是使用gnu工具集在windows上进行嵌入式系统开发,非常有用。
下载地址:http://www.cygwin.com。下载后会保存成setup.exe,双击开始安装。安装时要选择镜像站点;
组件安装有两种方式可供选择,一种是本地安装,这里采用另一种在线安装方式。
安装时,选择必须的组件如Devel 下的gcc-core, gcc-g++, make和Libs下的glib2.0,
如果组件都将安装,其下载量大概能有1.7G左右。
安装完成后,在环境变量里加入 d:/cygwin/bin 目录。然后在命令行里输入:
make –v(是否是 3.8.1 以上)
gcc –v (注意查看版本)
g++ -v 成功显示版本,表示安装及配置成功。
==============================================
由于Cygwin默认安装(就是推荐的安装)后,没有安装文本编辑器,
1、在Cigwin里 添加别名
vim ~/.bashrc
把 alias 的 相关注释 去掉 就ok了,如下:
alias ls='ls -hF --color=tty' #打开ls的颜色
2、添加 vim的配置文件
vim ~/.vimrc
在 这个 文件里 配置 vim,如:set nu 添加 行号
“以下 是Cigwin的vim常用配置
"1.基本设置:
set nu "显示行号
set ic "查找时不考虑大小写
"set noic "查找时考虑大小写,默认
set hlsearch " 搜索时高亮显示被找到的字符,hls
"set mouse=a "设定在任何模式下鼠标都可用,相当于 光标 跟在 鼠标走,副作用是 :选中该项 将无法用鼠标复制,鼠标 将失去的 右键的 复制功能
set tabstop=4 "设置tab长度为4,默认为8,ts
set shiftwidth=4 "设定>命令移动时宽度为4,sw
set expandtab "编辑时将所有 Tab 替换为空格,et
"注:该选项只在编辑时将 Tab 替换为空格, 如果打开一个已经存在的文件, 并不会将已有的 Tab 替换为空格。 如果希望进行这样的替换的话, 可以使用这条命令“:retab”。
set softtabstop=4 "使得按退格键时可以一次删除4个空格
set autoindent "自动缩进,默认 打开
"在粘贴的时候把所有自动缩进都关闭, 粘贴完毕之后再打开; 只要输入“:set paste”, 就可以关闭所有自动缩进。 粘贴完毕后再输入“:set nopaste”就可以重新打开原有的自动缩进设置了。
"set nowrap "指定不折行,如果一行太长, 超过屏幕宽度, 则向右边延伸到屏幕外面
set wrap "自动换行显示,默认方式
set formatoptions=tcqro "使得注释换行时自动加上前面的的 // 注释符
"--------------------- 个人 配置 ------------------
"设置命令行和状态栏
set cmdheight=1 "设定命令行的行数为1
set laststatus=2 "显示状态栏(默认值为1,无法显示状态栏,为2时显示状态栏)
set ruler "标尺信息,显示当前光标的坐标,这一步 需要设置 ”显示状态栏“,才能看到效果
set statusline=%F%m%r\ ASCII=\%b,HEX=\%B,%l,%c%V\ %L-%p%%
"设置在状态行显示的信息如下:
" %F 当前文件名
" %m 当前文件修改状态
" %r 当前文件是否只读
" %Y 当前文件类型
" %{&fileformat} 当前文件编码
" %b 当前光标处字符的ASCII码值
" %B 当前光标处字符的十六进制值
" %l 当前光标行号
" %c 当前光标列号
" %V 当前光标虚拟列号(根据字符所占字节数计算)
" %p 当前行占总行数的百分比
" %% 百分号
" %L 当前文件总行数
"获取当前文件名
function GetFileName()
return bufname(winbufnr(winnr())) "获取当前窗口缓冲区的名字
endfunction
"获取当前时间,精确到分
function GetDateTime()
return strftime("%Y-%m-%d %H:%M")
endfunction
"恢复文件关闭之前光标位置
if has("autocmd")
au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
endif
"用 ctrl+v 组合键,添加 如下 信息:
nmap <C-V> i/************************************************************<CR>
\<CR>******* * Function : <CR>
\<CR>******* * Author : ZaiLang<CR>
\<CR>******* * Time : <C-R>=GetDateTime()<ESC> <CR>
\<CR>***************************************************************/<CR><ESC>kkkkkkklllllllllllllllllllllllllli