| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6976 人关注过本帖, 2 人收藏
标题:送给用 EditPlus 或 Programmer's Notepad 等编辑器写代码的朋友!
只看楼主 加入收藏
BlueMouse
Rank: 1
来 自:贵州
等 级:新手上路
威 望:1
帖 子:52
专家分:0
注 册:2008-9-6
收藏(2)
 问题点数:0 回复次数:11 
送给用 EditPlus 或 Programmer's Notepad 等编辑器写代码的朋友!
昨天特意写的一个集编译连接和运行为一体的一个脚本!
只能编译 C/ C++ 代码, 当然前提是你得有编译系统!

程序代码:
/*
    * DocumentName: CompileAndLinker.js
    *   CreateDate: 2009-9-11
    *        Author: BlueMouse, [Lin], [Weipengyuan], [阿远]
    *          Note: 编译和连接运行和运行C或CPP代码
    *    CallFormat: CompileAndLinker.js "编译程序的路径", "连接程序的路径", "源文件所在的目录", "编译和连接后输出的目录", "连接后生成的可执行文件名", "连接开关", "头文件目录表", "库文件目录表"
    *  CallExample: cscript.exe CompileAndLinker.js "D:\Dev-Cpp\Bin\g++.exe" "D:\Dev-Cpp\Bin\g++.exe" "E:\Programs\Example" "E:\Programs\Example\Output" "MyProgram" "-mwindows" "D:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include|D:/Dev-Cpp/include/c++/3.4.2/backward|D:/Dev-Cpp/include/c++/3.4.2/mingw32|D:/Dev-Cpp/include/c++/3.4.2|D:/Dev-Cpp/include" "D:/Dev-Cpp/lib"
*/

var oWsh    = new ActiveXObject("WScript.Shell");
var oFso    = new ActiveXObject("Scripting.FileSystemObject");
var aArgs    = new Array();
var aSFiles    = new Array();
var aOFiles    = new Array();
var sTemp    = new String("");
var check    = 0;
var nIndex    = 0;
var nJndex    = 0;
var Re;
var oFile, oFolder, oFiles, oCP, oLP;
var aHeaders, aLibrars;

//----------------------------------------------------------------------------------------------------------
//    检查参数合法性
//----------------------------------------------------------------------------------------------------------

if(WScript.Arguments.length==8)
{
    try
    {
        sTemp    = WScript.Arguments(0);
        oFile    = oFso.GetFile(sTemp);
        oFile    = null;
        check++;
        aArgs["CompileBinPath"] = sTemp;

        sTemp    = WScript.Arguments(1);
        oFile    = oFso.GetFile(sTemp);
        oFile    = null;
        check++;
        aArgs["LinkerBinPath"] = sTemp;


        sTemp    = WScript.Arguments(2);
        oFolder    = oFso.GetFolder(sTemp);
        sTemp    = oFolder.Path + "\\";
        oFolder = null;
        check++;
        aArgs["SocureDir"] = sTemp;

        sTemp    = WScript.Arguments(3);
        oFolder    = oFso.GetFolder(sTemp);
        sTemp    = oFolder.Path + "\\";
        oFolder = null;
        check++;
        aArgs["OutputDir"] = sTemp;

        try
        {
            sTemp    = WScript.Arguments(4);
            if(sTemp.length<=0)
            {
                throw    "您所提供的目标程序文件名参数不正确,请提供正确的参数!";
            }
            else
            {
                Re    = /\./;
                if(sTemp.search(Re)<0)
                {
                    sTemp    += ".exe";                    
                }
                aArgs["ExecFileName"] = sTemp;
                check++;
            }
            

            sTemp    = WScript.Arguments(5);
            if(sTemp.length<=0)
            {
                throw    "您所提供的库参数不正确,请提供正确的参数!";
            }
            else
            {
                aArgs["LinkerSwitch"] = sTemp;
                check++;
            }
        }
        catch(ErrInfo)
        {
            WScript.Echo(ErrInfo);
        }

        sTemp        = WScript.Arguments(6);
        aHeaders    = sTemp.split("|");
        if(aHeaders.length>0)
        {
            for(nIndex=0;nIndex<aHeaders.length;nIndex++)
            {
                oFolder    = oFso.GetFolder(aHeaders[nIndex]);
                oFolder    = null;
            }
        }
        else
        {
            oFolder    = oFso.GetFolder(sTemp);
            oFolder    = null;
            aHeaders    = new Array();
            aHeaders[0]    = sTemp;
        }
        check++;

        sTemp        = WScript.Arguments(7);
        aLibrars    = sTemp.split("|");
        if(aLibrars.length>0)
        {
            for(nIndex=0;nIndex<aLibrars.length;nIndex++)
            {
                oFolder    = oFso.GetFolder(aLibrars[nIndex]);
                oFolder    = null;
            }
        }
        else
        {
            oFolder    = oFso.GetFolder(sTemp);
            oFolder    = null;
            aLibrars    = new Array();
            aLibrars[0]    = sTemp;
        }
        check++;

    }
    catch(ErrObj)
    {
        if(ErrObj.number==-2146828235)
        {
            if(check==0)
            {
                WScript.Echo("您所提供的编译程序路径 [ " + sTemp + " ] 不正确!,请提供正确的参数!");
            }
            else if(check==1)
            {
                WScript.Echo("您所提供的连接程序路径 [ " + sTemp + " ] 不正确!,请提供正确的参数!");
            }
        }
        else if(ErrObj.number==-2146828212)
        {
            if(check==2)
            {
                WScript.Echo("您所提供的源文件所目录 [ " + sTemp + " ] 不正确!,请提供正确的参数!");
            }
            else if(check==3)
            {
                WScript.Echo("您所提供的输出目录 [ " + sTemp + " ] 不正确!,请提供正确的参数!");
            }
            else if(check==6)
            {
                WScript.Echo("您所提供的头文件目录表不正确!,请提供正确的目录!");
            }
            else if(check==7)
            {
                WScript.Echo("您所提供的库文件目录表不正确!,请提供正确的目录!");
            }
        }
        else
        {
            WScript.Echo("编译脚本在检测参数合法性时遇到不明的错误 [ " + ErrObj.number + " ],脚本将停止执行!");
        }
    }

    if(check==8)
    {
        //------------------------------------------------
        //    取得需要编译的源文件并生成其对应的编译目标文件名
        //------------------------------------------------
        oFolder = oFso.GetFolder(aArgs["SocureDir"]);
        oFiles    = new Enumerator(oFolder.files);
        nIndex    = 0;

        for(;!oFiles.atEnd();oFiles.moveNext())
        {
            sTemp    = oFiles.item().Path;
            if((sTemp.substr(sTemp.length-4,1)=="."&&sTemp.substr(sTemp.length-3,3)=="cpp")||(sTemp.substr(sTemp.length-2,1)=="."&&sTemp.substr(sTemp.length-1,1)=="c"))
            {
                aSFiles[nIndex] = sTemp;
                Re                = /\./;
                sTemp            = oFiles.item().Name;
                nCheck            = sTemp.search(Re);
                aOFiles[nIndex] = aArgs["OutputDir"] + sTemp.substr(0,nCheck+1)+"o";            
                nIndex++;
            }
        }
        oFiles    = null;
        oFolder    = null;

        //------------------------------------------------
        //    编译源文件
        //------------------------------------------------
        WScript.Echo("---------- Compile ----------\r");
        check = 8;

        for(nIndex=0;nIndex<aSFiles.length;nIndex++)
        {
            sTemp    = aArgs["CompileBinPath"];
            sTemp    += " -c \"" + aSFiles[nIndex] + "\"";
            sTemp    += " -o \"" + aOFiles[nIndex] + "\"";
            for(nJndex=0;nJndex<aHeaders.length;nJndex++)
            {
                sTemp    += " -I\"" + aHeaders[nJndex] + "\"";
            }

            oCP        = oWsh.Exec(sTemp);
            sTemp    = "";
            while(oCP.status!=1)
            {
                if(!oCP.StdErr.AtEndOfStream)
                {
                    sTemp += oCP.StdErr.Read(1);
                }
            }
            if(sTemp.length==0)
            {
                WScript.Echo(aSFiles[nIndex] + " Compilation successful!\r");
                check++;
            }
            else
            {
                WScript.Echo(sTemp);
            }
            oCP        = null;
        }

        //------------------------------------------------
        //    连接目标文件
        //------------------------------------------------
        if(check==8+aSFiles.length)
        {
            WScript.Echo("\r---------- Linker ----------\r");
            
            sTemp = "";
            for(nIndex=0;nIndex<aOFiles.length;nIndex++)
            {
                sTemp    += " \"" + aOFiles[nIndex] + "\"";
            }
            sTemp    = aArgs["LinkerBinPath"] + " " + sTemp + " -o \"" + aArgs["OutputDir"] + aArgs["ExecFileName"] + "\"";
            for(nJndex=0;nJndex<aLibrars.length;nJndex++)
            {
                sTemp    += " -L\"" + aLibrars[nJndex] + "\"";
            }
            sTemp    += " " + aArgs["LinkerSwitch"];

            oLP        = oWsh.Exec(sTemp);
            sTemp    = "";
            while(oLP.status!=1)
            {
                if(!oLP.StdErr.AtEndOfStream)
                {
                    sTemp += oLP.StdErr.Read(1);
                }
            }
            if(sTemp.length==0)
            {
                WScript.Echo(aArgs["OutputDir"] + aArgs["ExecFileName"] + " Createing successful!\r");
                check++;
            }
            else
            {
                WScript.Echo(sTemp);
            }
            oLP        = null;
        }
    }

    //------------------------------------------------
    //    运行新生成的程序
    //------------------------------------------------
    if(check==8+1+aSFiles.length)
    {
        if(oWsh.Popup("代码已经成功编译及连接,是否要运行新生成的程序?",10,"运行程序",4|32)==6)
        {
            WScript.Echo("\r---------- Run ----------\r");
            
            check = oWsh.Run("\"" + aArgs["OutputDir"] + aArgs["ExecFileName"] + "\"",5,true);

            WScript.Echo("RturenVal( " + check + " ) ");
        }
    }
}
else if(WScript.Arguments.length<8)
{
    WScript.Echo("您提供的参数数量不够,脚本将停止执行!");
}
else if(WScript.Arguments.length>8)
{
    WScript.Echo("您提供的参数数量过多,脚本将停止执行!");
}

//
// 结束脚本执行
//
oWsh    = null;
oFso    = null;
aArgs    = null;
WScript.Quit();
搜索更多相关主题的帖子: Programmer 编辑器 
2008-09-12 08:17
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
收藏
得分:0 
EditPlus 或 Programmer's Notepad

这个是没用过,
看似不错,顶顶...

2008-09-12 22:56
yuezhuying
Rank: 2
等 级:论坛游民
帖 子:115
专家分:10
注 册:2008-9-13
收藏
得分:0 
我用过EditPlus+MinGW,编译和运行操作是分开的。
不过楼主所说的脚本要怎么用啊????放在哪儿???
2008-10-07 22:14
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
很久以前用EP+minGW,而且自己写脚本。因为语法原因后来选择了使用批处理来书写脚本。
现在使用VIM+minGW,所以理所当然地改用eval书写编译脚本了……你要不?

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-10-09 09:54
yuezhuying
Rank: 2
等 级:论坛游民
帖 子:115
专家分:10
注 册:2008-9-13
收藏
得分:0 
[bo][un]StarWing83[/un] 在 2008-10-9 09:54 的发言:[/bo]

很久以前用EP+minGW,而且自己写脚本。因为语法原因后来选择了使用批处理来书写脚本。
现在使用VIM+minGW,所以理所当然地改用eval书写编译脚本了……你要不?

那个VIM? 我查了一下, 看起来不容易学呀~~查找时顺便也看到了两篇文《世界第二的Vim——普通人的编辑器》和《Emacs是一种信仰!世界最强的编辑器》。
你的脚本我想要,呵呵~~那么强的编辑器让人很想试试~~
2008-10-09 19:08
kevin88
Rank: 1
等 级:新手上路
威 望:1
帖 子:22
专家分:0
注 册:2008-9-18
收藏
得分:0 
楼主好样的!
2008-10-11 18:51
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
因为我也要换脚本了,准备抽时间重新写一份脚本,更好的封装一下更新,这份代码就给你们用吧~~~放到VIM目录下覆盖_vimrc就可以使用了,不过这个代码不是随便用的,需要安装几个插件才可以,大家先看看吧,我做了个移动版的VIM+minGW。不过不打算外传,哈哈~~
程序代码:
" My vimrc file
" Create by StarWing
" Setting frim vimrc_example {{{
" An example for a vimrc file.
"
" Maintainer:    Bram Moolenaar <Bram@ Last change:    2008 Jul 02
"
" To use it, copy it to
"     for Unix and OS/2:  ~/.vimrc
"          for Amiga:  s:.vimrc
"  for MS-DOS and Win32:  $VIM\_vimrc
"        for OpenVMS:  sys$login:.vimrc

" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"
    finish
endif

" Use Vim settings, rather then Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
set nocompatible

" allow backspacing over everything in insert mode
set backspace=indent,eol,start

if has("vms")
    set nobackup        " do not keep a backup file, use versions instead
else
    set backup        " keep a backup file
endif
set history=50        " keep 50 lines of command line history
set ruler        " show the cursor position all the time
set showcmd        " display incomplete commands
set incsearch        " do incremental searching

" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries
" let &guioptions = substitute(&guioptions, "t", "", "g")

" Don't use Ex mode, use Q for formatting
map Q gq

" CTRL-U in insert mode deletes a lot.  Use CTRL-G u to first break undo,
" so that you can undo CTRL-U after inserting a line break.
inoremap <C-U> <C-G>u<C-U>

" In many terminal emulators the mouse works just fine, thus enable it.
if has('mouse')
    set mouse=a
endif

" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")
    syntax on
    set hlsearch
endif

" Only do this part when compiled with support for autocommands.
if has("autocmd")

    " Enable file type detection.
    " Use the default filetype settings, so that mail gets 'tw' set to 72,
    " 'cindent' is on in C files, etc.
    " Also load indent files, to automatically do language-dependent indenting.
    filetype plugin indent on

    " Put these in an autocmd group, so that we can delete them easily.
    augroup vimrcEx
        au!

        " For all text files set 'textwidth' to 78 characters.
        autocmd FileType text setlocal textwidth=78

        " When editing a file, always jump to the last known cursor position.
        " Don't do it when the position is invalid or when inside an event handler
        " (happens when dropping a file on gvim).
        " Also don't do it when the mark is in the first line, that is the default
        " position when opening a file.
        autocmd BufReadPost *
                    \ if line("'\"") > 1 && line("'\"") <= line("$") |
                    \   exe "normal! g`\"" |
                    \ endif

    augroup END

else

    set autoindent        " always set autoindenting on

endif " has("autocmd")

" Convenient command to see the difference between the current buffer and the
" file it was loaded from, thus the changes you made.
" Only define it when not defined already.
if !exists(":DiffOrig")
    command DiffOrig vert new | set bt=nofile | r # | 0d_ | diffthis
                \ | wincmd p | diffthis
endif


" }}}

" My Own Setting
" Time : 2008年 09月 02日 星期二 13:16:56 CST
" Global setting {{{

if has("gui_running")
    colorscheme evening "设置颜色主题
    set guifont=Courier\ New\ 9 "显示字体
endif

set autoread "自动读写在外部改变的文件
set clipboard+=unnamed "使用"*寄存器作剪切粘贴工作
set completeopt=longest,menu "自动完成设定
set fileencodings=ucs-bom,utf-8,gbk "尝试打开文件的编码

" 载入在Windows下的特殊设置
source $VIM/tools/win.vim

" }}}
" Global maps {{{

imap <F3> <ESC><F3>
nmap <F3> :%s///g<LEFT><LEFT><LEFT>
map <F4> :noh<CR>

" 全部复制
nmap zy gg"+yG
" 全部粘贴
nmap zp ggVG"+p
" 得到日期
nmap gl A<C-R>=system("date")<CR><BS><ESC>
" 启用WinManager
map gc :WMToggle<CR>


"}}}
" auto commands for C/C++ file {{{

if has('autocmd')
    augroup C_env_cmd
        au BufFilePost *.c setf c | setl modified
        au BufFilePost *.{cpp,C,cc,h,hpp} setf cpp | setl modified
        au FileType c,cpp call Set_env_for_C()
    augroup END
endif

" }}}
" feature that has eval functon {{{
if has('eval')
    " Commands for CC flags {{{

    command UseGtk let cc_flags='`pkg-config --libs --cflags gtk+-2.0`'
    command UseGL let cc_flags='-L/usr/X11R6/lib -lglut -lGLU -lGL -lX11
                \ -lXext -lXmu -lXi -lm' 


    " }}}
    " Global vars for plugins and functions {{{
    "
    let g:astyle_flags = '-npUt --style=ansi --mode=c'
    let g:cc_flags = '-Wall -lm -O2'

    let g:ctags_file = './tags.current'
    let g:ctags_flags = '--c++-kinds=+p --fields=+ialS --extra=+q'

    let g:winManagerWindowLayout = 'FileExplorer|TagList'

    let g:miniBufExplMapCTabSwitchBufs = 1
    let g:miniBufExplMapWindowNavVim = 1
    let g:miniBufExplorerMoreThanOne = 2

    let g:SuperTabRetainCompletionType = 2
    let g:SuperTabDefaultCompletionType = '<C-X><C-O>'

    let OmniCpp_GlobalScopeSearch = 1  " 0 or 1
    let OmniCpp_NamespaceSearch = 1   " 0 ,  1 or 2
    let OmniCpp_DisplayMode = 1
    let OmniCpp_ShowScopeInAbbr = 0
    let OmniCpp_ShowPrototypeInAbbr = 1
    let OmniCpp_ShowAccess = 1
    let OmniCpp_MayCompleteDot = 1
    let OmniCpp_MayCompleteArrow = 1
    let OmniCpp_MayCompleteScope = 1

    let Tlist_Show_One_File = 1
    let Tlist_Exit_OnlyWindow = 1

    let g:prj_dir = '~/Projects/misc'
    if argc() == 0
        if isdirectory(expand(g:prj_dir))
            exec 'cd '.expand(g:prj_dir)
        endif
    else
        exec 'cd %:p:h'
    endif


    " }}}
    " Functions for progaming {{{
    " Find C/C++ file in current window {{{
    " 
    func! Find_C_File()
        let s:thiswin = winnr()
        while 1
            if &filetype == 'c' || &filetype == 'cpp'
                return 0
            endif
            exec "normal! \<C-W>w"
            if s:thiswin == winnr()
                echo "Can't find C/C++ file, have you open it?"
                return 1
            endif
        endwhile
    endfunc    "}}}
    "Compile C/C++ file,smart analyze the filetype {{{
    "
    func! Compile()
        if Save_and_Update_tags()
            return 1
        endif

        let cc = (&filetype=='c' ? 'gcc' : 'g++')
        let msg = ['Compiling '.&filetype.' program '.bufname('').' ...']
        redraw | echo msg[0]
        let msg += [cc.' -o "'.expand("%:r").'" '.g:cc_flags.' "'.expand('%').'"']
        let msg += split(system(msg[1]),"\<NL>",1)
        let msg += ['Compile completed. '.cc.' return '.v:shell_error]
        call writefile(msg,&errorfile)

        silent cgetfile
        silent cwindow

        redraw
        if v:shell_error == 0
            echo 'Compile Success!'
        else
            echo 'Compile fail, debug please!'
        endif
        return v:shell_error 
    endfunc "}}}
    "A simple Implement of compile and run {{{
    func! Compile_and_Run()
        if Find_C_File() || (&modified && Compile())
            return
        endif
        exec '!'.expand("%:p:r")
    endfunc "}}}
    " Save file, and update tags using ctags {{{
    " 
    func! Save_and_Update_tags()
        if Find_C_File()
            return 1
        endif

        try
            if &modified
                write
            endif
        catch /E13/
            echo 'Error: same file exists, Still Save?(y/n)'
            if nr2char(getchar()) ==? 'y'
                write!
            else
                redraw | echo 'Done nothing.'
                return 1
            endif
        endtry

        call system('ctags '.g:ctags_flags.' -f"'
                    \ .g:ctags_file.'" "'.expand("%").'"')
        TlistUpdate
        redraw | echo 'Update tags completed!'
    endfunc "}}}
    " Run AStyle filter on C/C++ file {{{
    " 
    func! AStyle_on_file()
        if Find_C_File()
            return 1
        endif

        set modified
        exec '%!astyle '.g:astyle_flags
        exec "normal ''zz"
        if !Save_and_Update_tags()
            redraw | echo 'Save and Artistic Style completed!'
        endif
    endfunc "}}}
    "Set the C development envirnment {{{
    "
    func! Set_env_for_C()

        if exists("g:ctags_file")
            exec 'setl tags+=~/.vim/systags,'.escape(g:ctags_file,' ')
        endif

        if exists("g:astyle_flags")
            exec 'setl equalprg=astyle\ '.escape(g:astyle_flags,' ')
        endif

        setl cindent "使用C方式的缩进
        setl errorformat+=%f:%m "让错误提示处理只有文件名的情况
        setl expandtab "用空格代替TAB字符
        setl foldcolumn=2 "折叠栏宽度为1
        setl foldlevel=100  "启动 vim 时不要自动折叠代码 
        setl foldmethod=syntax "语法方式折叠
        setl number "打开行号
        setl shiftwidth=4 "缩进大小
        setl smarttab "使用智能TAB
        setl tabstop=4 "TAB大小

        " 编译,运行,更新tags
        map<silent> <A-c> :call Compile()<CR>
        map<silent> <A-r> :call Compile_and_Run()<CR>
        map<silent> <A-u> :call AStyle_on_file()<CR>

        " 错误遍历
        map<silent> <F5> :call Compile_and_Run()<CR>
        map<silent> <F6> :call AStyle_on_file()<CR>
        map<silent> <F7> :silent! cp<CR>
        map<silent> <F8> :silent! cn<CR>

        " **** 常用缩写 **** "
        map<silent> <F10> gf
        map<silent> <F11> <C-O>

        " 打开头文件,在头文件/源文件中切换,文件模板
        map<silent> <F12> :A<CR>

        " Insert模式下的映射
        imap<A-c> <ESC><A-c>
        imap<A-r> <ESC><A-r>
        imap<A-u> <ESC><A-u>i
        imap<F5> <ESC><F5>i
        imap<F6> <ESC><F6>i
        imap<F7> <ESC><F7>i
        imap<F8> <ESC><F8>i

        iabbrev<buffer> #b /*********************************************
        iabbrev<buffer> #e <BS>*******************************************/
        iabbrev<buffer> #fheader# /*********************************************<CR>File Name:<CR>Author:<CR>Date:<C-R>=system("date")<CR>Version:<CR><BS>*******************************************/<UP><UP><UP><UP><C-R>=bufname("")<CR>
        iabbrev<buffer> #tc# #include <stdio.h><CR>#include <stdlib.h><CR><CR>int main(void)<CR>{<CR>return 0;<CR>}<CR><ESC>kkko
        iabbrev<buffer> #tcpp# #include<iostream><CR>using namespace std;<CR><CR>int main()<CR>{<CR>return 0;<CR>}<CR><Esc>kkko
        iabbrev<buffer> #i #include

        if has("gui_running")
            if &columns < 86
                let &columns = 86
            endif
            if &lines < 25
                let &lines = 25
            endif
        endif
    endfunc "}}}
    " }}}
endif
" }}}

"My vimrc History {{{
"================================================================================
" My vimrc History:
"     1.0.0 o Create this Script File.
"     1.0.1 o Add vimrc_example in this file.
"           o yank the setting for C/C++ file into a single function.
"     1.0.2 o Find A better way to solve the question that cursor is not in
"             a C/C++ file window.
"           o Use file filter to run astyle, not a system() function.
"           o Add folds in file.
"           o Change Script language into English.
"    1.0.3 o Recode functions, and separated eval-requires code with other
"               codes.
"
"================================================================================
" }}}
" vim:ft=vim:fdm=marker:ff=unix:nowrap:tabstop=4:shiftwidth=4:softtabstop=4:smarttab:shiftround:expandtab:nu



[[it] 本帖最后由 StarWing83 于 2008-10-12 05:27 编辑 [/it]]

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-10-12 05:24
StarWing83
Rank: 8Rank: 8
来 自:仙女座大星云
等 级:贵宾
威 望:19
帖 子:3951
专家分:748
注 册:2007-11-16
收藏
得分:0 
另外,我在VIM的插件miniBufExplorer里面发现一个关于无法语法高亮的Bug,并做了修改,有人要新版本的么?

专心编程………
飞燕算法初级群:3996098
我的Blog
2008-10-12 05:32
yuezhuying
Rank: 2
等 级:论坛游民
帖 子:115
专家分:10
注 册:2008-9-13
收藏
得分:0 
[bo][un]StarWing83[/un] 在 2008-10-12 05:24 的发言:[/bo]

我做了个移动版的VIM+minGW。不过不打算外传,哈哈~~

小气鬼~~~
我可是有在学用Vim呢~~不过命令也真多~~~可是又感觉非常的好用呢~~~~
2008-10-12 20:20
yuezhuying
Rank: 2
等 级:论坛游民
帖 子:115
专家分:10
注 册:2008-9-13
收藏
得分:0 
[bo][un]StarWing83[/un] 在 2008-10-12 05:32 的发言:[/bo]

另外,我在VIM的插件miniBufExplorer里面发现一个关于无法语法高亮的Bug,并做了修改,有人要新版本的么?

我下载的是7.2版的~~~~~不知是不是最新版本的???
桌面上有三个图标:gVim 7.2、gVim Read only 7.2、gVim Easy 7.2。有什么区别吗?我只用了gVim 7.2。
2008-10-12 20:27
快速回复:送给用 EditPlus 或 Programmer's Notepad 等编辑器写代码的朋友!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026176 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved