editplus vc


gcc

gc
D:\sys\Toolkit\gcc4.4.0Bboost1.45.0\mingw\bin\gcc.exe

-Wall -c $(FileName)
$(FileDir)

gl
"D:\sys\Toolkit\gcc4.4.0Bboost1.45.0\mingw\bin\gcc.exe"
$(FileNameNoExt).o -lstdc++ -lboost_system -lwsock32 -lws2_32 -o $(FileNameNoExt).exe
$(FileDir)


csharp

compiler
D::\Program Files\EditPlus\CSharp.bat
$(FileDir) $(FileNameNoExt) $(FileName)
$(FileDir)


dll
D:\Program Files\EditPlus\csharp.dll.bat
$(FileDir) $(FileNameNoExt) $(FileName)
$(FileDir)


csharp.dll.bat

rem csc /t:library acme.cs
@echo off
C:\WINDOWS\Microsoft.NET\Framework\v3.5\csc.exe /t:library /out:%1\%2.dll %3
rem %1:$(FileDir)
rem %2:$(FileNameNoExt)
rem %3:$(FileName)

charp.bat

@echo off
C:\WINDOWS\Microsoft.NET\Framework\v3.5\csc.exe /target:exe /out:%1\%2.exe %3
%1\%2.exe
rem %1:$(FileDir)
rem %2:$(FileNameNoExt)
rem %3:$(FileName)


VC
A cl.bat

command : "D:\sys\Toolkit\vs2010sp1\VC\bin\cl.bat"
argument: $(FilePath)
Initial Diretory:$(FileDir)

B RUN
command : $(FileNameNoExt)
argument: $(FilePath)
Initial Diretory:$(FileDir)

C AStyle
"D:\sys\Toolkit\AStyle_2.01\bin\AStyle.exe"
--style=kr $(FileName)
$(FileDir)

D uncrustify
"D:\sys\Toolkit\uncrustify-0.57\uncrustify.exe"
-c D:\sys\Toolkit\uncrustify-0.57\Fav.cfg  -f $(FileName) -o $(FileName)
$(FileDir)


WINSDK_v7.0A: D:\sys\Toolkit\vs2010sp1\VC\WINSDK_v7.0A

1. cl.bat

@echo off
call "D:\sys\Toolkit\vs2010sp1\VC\bin\vcvars32.bat"
call "D:\sys\Toolkit\vs2010sp1\VC\vs2010.bat"
if "%1" == "" goto usage
cl "%1" /MD /EHsc -D_WIN32_WINNT=0x0501
goto :eof

:usage
echo:
echo Error using cl.bat. The correct usage is:
echo     %0 Filename
echo:
echo For example:
echo     %0 C:\example.cpp
goto :eof

2. vs2010.bat
@echo off

call :vs10_env %~dp0 %~dp0\WINSDK_v7.0A
rem call :vs_cmd "%~dp0\demo"
goto :eof

:vs10_env
set VS=%1
set WINSDK=%2
set include=%WINSDK%\include;%VS%\include;D:\sys\Toolkit\gcc4.4.0Bboost1.45.0\mingw\include
set lib=%WINSDK%\lib;%VS%\lib;D:\sys\lib\boost.1.46.1\lib
set PATH=%VS%\BIN;%WINSDK%\bin;%path
set PATH=%VS%\bin;%PATH%
set PATH=%PATH%;%VS%\redist\Microsoft.VC100.CRT
set PATH=%PATH%;%VS%\redist\Microsoft.VC100.OPENMP
goto :eof

:vs_cmd
pushd %1
start cmd /k title %VS%,%WINSDK%
goto :eof

3. vcvars32.bat
@echo Setting environment for using Microsoft Visual Studio 2010 x86 tools.

@call :GetVSCommonToolsDir
@if "%VS100COMNTOOLS%"=="" goto error_no_VS100COMNTOOLSDIR

@call "%VS100COMNTOOLS%VCVarsQueryRegistry.bat" 32bit No64bit

@if "%VSINSTALLDIR%"=="" goto error_no_VSINSTALLDIR
@if "%FrameworkDir32%"=="" goto error_no_FrameworkDIR32
@if "%FrameworkVersion32%"=="" goto error_no_FrameworkVer32
@if "%Framework35Version%"=="" goto error_no_Framework35Version

@set FrameworkDir=%FrameworkDir32%
@set FrameworkVersion=%FrameworkVersion32%

@if not "%WindowsSdkDir%" == "" (
    @set "PATH=%WindowsSdkDir%bin\NETFX 4.0 Tools;%WindowsSdkDir%bin;%PATH%"
    @set "INCLUDE=%WindowsSdkDir%include;%INCLUDE%"
    @set "LIB=%WindowsSdkDir%lib;%LIB%"
)

@rem
@rem Root of Visual Studio IDE installed files.
@rem
@set DevEnvDir=%VSINSTALLDIR%Common7\IDE\

@rem PATH
@rem ----
@if exist "%VSINSTALLDIR%Team Tools\Performance Tools" (
    @set "PATH=%VSINSTALLDIR%Team Tools\Performance Tools;%PATH%"
)
@if exist "%ProgramFiles%\HTML Help Workshop" set PATH=%ProgramFiles%\HTML Help Workshop;%PATH%
@if exist "%ProgramFiles(x86)%\HTML Help Workshop" set PATH=%ProgramFiles(x86)%\HTML Help Workshop;%PATH%
@if exist "%VCINSTALLDIR%VCPackages" set PATH=%VCINSTALLDIR%VCPackages;%PATH%
@set PATH=%FrameworkDir%%Framework35Version%;%PATH%
@set PATH=%FrameworkDir%%FrameworkVersion%;%PATH%
@set PATH=%VSINSTALLDIR%Common7\Tools;%PATH%
@if exist "%VCINSTALLDIR%BIN" set PATH=%VCINSTALLDIR%BIN;%PATH%
@set PATH=%DevEnvDir%;%PATH%

@if exist "%VSINSTALLDIR%VSTSDB\Deploy" (
    @set "PATH=%VSINSTALLDIR%VSTSDB\Deploy;%PATH%"
)

@if not "%FSHARPINSTALLDIR%" == "" (
    @set "PATH=%FSHARPINSTALLDIR%;%PATH%"
)

@rem INCLUDE
@rem -------
@if exist "%VCINSTALLDIR%ATLMFC\INCLUDE" set INCLUDE=%VCINSTALLDIR%ATLMFC\INCLUDE;%INCLUDE%
@if exist "%VCINSTALLDIR%INCLUDE" set INCLUDE=%VCINSTALLDIR%INCLUDE;%INCLUDE%

@rem LIB
@rem ---
@if exist "%VCINSTALLDIR%ATLMFC\LIB" set LIB=%VCINSTALLDIR%ATLMFC\LIB;%LIB%
@if exist "%VCINSTALLDIR%LIB" set LIB=%VCINSTALLDIR%LIB;%LIB%

@rem LIBPATH
@rem -------
@if exist "%VCINSTALLDIR%ATLMFC\LIB" set LIBPATH=%VCINSTALLDIR%ATLMFC\LIB;%LIBPATH%
@if exist "%VCINSTALLDIR%LIB" set LIBPATH=%VCINSTALLDIR%LIB;%LIBPATH%
@set LIBPATH=%FrameworkDir%%Framework35Version%;%LIBPATH%
@set LIBPATH=%FrameworkDir%%FrameworkVersion%;%LIBPATH%

@goto end

@REM -----------------------------------------------------------------------
:GetVSCommonToolsDir
@set VS100COMNTOOLS=
@call :GetVSCommonToolsDirHelper32 HKLM > nul 2>&1
@if errorlevel 1 call :GetVSCommonToolsDirHelper32 HKCU > nul 2>&1
@if errorlevel 1 call :GetVSCommonToolsDirHelper64  HKLM > nul 2>&1
@if errorlevel 1 call :GetVSCommonToolsDirHelper64  HKCU > nul 2>&1
@exit /B 0

:GetVSCommonToolsDirHelper32
@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
    @if "%%i"=="10.0" (
        @SET "VS100COMNTOOLS=%%k"
    )
)
@if "%VS100COMNTOOLS%"=="" exit /B 1
@SET "VS100COMNTOOLS=%VS100COMNTOOLS%Common7\Tools\"
@exit /B 0

:GetVSCommonToolsDirHelper64
@for /F "tokens=1,2*" %%i in ('reg query "%1\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\SxS\VS7" /v "10.0"') DO (
    @if "%%i"=="10.0" (
        @SET "VS100COMNTOOLS=%%k"
    )
)
@if "%VS100COMNTOOLS%"=="" exit /B 1
@SET "VS100COMNTOOLS=%VS100COMNTOOLS%Common7\Tools\"
@exit /B 0

@REM -----------------------------------------------------------------------
:error_no_VS100COMNTOOLSDIR
@echo ERROR: Cannot determine the location of the VS Common Tools folder.
@goto end

:error_no_VSINSTALLDIR
@echo ERROR: Cannot determine the location of the VS installation.
@goto end

:error_no_FrameworkDIR32
@echo ERROR: Cannot determine the location of the .NET Framework 32bit installation.
@goto end

:error_no_FrameworkVer32
@echo ERROR: Cannot determine the version of the .NET Framework 32bit installation.
@goto end

:error_no_Framework35Version
@echo ERROR: Cannot determine the .NET Framework 3.5 version.
@goto end

:end

4. fav.cfg
# Mike's style for c (or as close as possible)  
#  
#  
# $Id: amxmodx.cfg 313 2006-07-29 02:13:00 EST marticus $  
#  
 
###########################################  
# special alain of var-defs    
 
set attribute _PREPROCESSOR_SOMETHING  
align_var_def_attribute = true  
 
#######################  
# Basic Indenting Stuff  
 
# (a/i/r) comment notation for add/ignore/remove which is the actual setting  
input_tab_size      = 1    # tab size on input file: usually 8  
output_tab_size     = 8    # tab size for output: usually 8  
indent_columns      = 8    # ie 3 or 8  
indent_with_tabs    = 2    # 1=only to the 'level' indent, 2=use tab indenting  
#indent_paren_nl     = 1    # indent-align under paren for open followed by nl  
 
pp_indent           = remove # indent preproc 1 space per level (a/i/r)  
pp_space            = remove # spaces between # and word (add/ignore/remove)  
 
indent_switch_case  = indent_columns    # spaces to indent case from switch  
#indent_case_brace   = 1    # spaces to indent '{' from case  
                            # (usually 0 or indent_columns)  
 
#indent_brace         = 0    # spaces to indent '{' from level (usually 0)  
indent_braces        = 0    # whether to indent the braces or not  
#indent_label         = 0    # 0=left >0=col from left (absolute column),  
                             # <0=sub from brace indent (relative column)  
 
indent_align_string    = false # True/False - indent align broken strings  
indent_col1_comment    = false # indent comments in column 1  
indent_func_call_param = false # indent continued function calls to indent_columns otherwise index_columns + spaces to align with open paren.  
 
indent_namespace    = true  # indent stuff inside namespace braces  
indent_class        = true  # indent stuff inside class braces  
 
 
############################  
# Misc Inter-element Spacing  
#  Force,Ignore,Add,Remove  
 
# ignored by nl_*_brace = true  
sp_paren_brace       = force  # space between ')' and '{'  
sp_fparen_brace      = force  # space between ')' and '{' of function  
sp_sparen_brace      = remove  # space between ')' and '{' of if, while, etc  
 
sp_after_cast        = remove  # space after cast - "(int) a" vs "(int)a"  
 
sp_before_byref      = force  # space before '&' of 'fcn(int& idx)'  
 
sp_inside_fparen     = remove  # space inside 'foo( xxx )' vs 'foo(xxx)'  
sp_inside_fparens    = remove # space inside 'foo( )' vs 'foo()'  
sp_inside_paren      = remove # space inside '+ ( xxx )' vs '+ (xxx)'  
sp_inside_square     = remove # space inside 'byte[ 5 ]' vs 'byte[5]'  
sp_inside_sparen     = remove  # space inside 'if( xxx )' vs 'if(xxx)'  
sp_inside_angle      = ignore # space inside '<>', as in '<class T>'  
 
sp_before_sparen     = remove  # space before '(' of 'if/for/while/switch'  
sp_after_sparen      = remove  # space after  ')' of 'if/for/while/switch'  
                              # the do-while does not get set here  
 
sp_before_angle      = ignore # space before '<>', as in '<class T>'  
sp_after_angle       = ignore # space after  '<>', as in '<class T>'  
 
sp_before_square     = ignore # space before single '['  
sp_before_squares    = remove # space before '[]', as in 'byte []'  
 
sp_paren_paren       = force  # space between nested parens - '( (' vs '(('  
 
sp_return_paren      = remove # space between 'return' and '('  
sp_sizeof_paren      = remove # space between 'sizeof' and '('  
 
sp_after_comma       = force  # space after ','  
 
sp_arith             = force  # space around + - / * etc  
sp_bool              = force  # space around || &&  
sp_compare           = force  # space around < > ==, etc  
sp_assign            = force  # space around =, +=, etc  
 
sp_func_def_paren    = remove # space between 'func' and '(' - "foo (" vs "foo("  
sp_func_call_paren   = remove # space between 'func' and '(' - "foo (" vs "foo("  
sp_func_proto_paren  = remove # space between 'func' and '(' - "foo (" vs "foo("  
sp_func_class_paren  = remove # space between ctor/dtor and '('  
 
#sp_type_func         = 1      # space between return type and 'func'  
                               # a minimum of 1 is forced except for '*'  
 
 
sp_special_semi         = remove # space empty stmt ';' on while, if, for  
                                 # example "while (*p++ = ' ') ;"  
sp_before_semi          = remove # space before all ';'  
sp_inside_braces        = force  # space inside '{' and '}' - "{ 1, 2, 3 }"  
sp_inside_braces_enum   = force  # space inside enum '{' and '}' - "{ a, b, c }"  
sp_inside_braces_struct = force  # space inside struct/union '{' and '}'  
 
sp_macro             = force  # space between macro and value, ie '#define a 6'  
sp_macro_func        = force  # space between macro and value, ie '#define a 6'  
 
sp_square_fparen     = remove # weird pawn stuff: native yark[rect](a[rect])  
sp_after_tag         = remove # pawn: space after a tag colon  
 
 
################################  
# Code Alignment  
# (not left column spaces/tabs)  
 
align_with_tabs       = true   # use tabs for aligning (0/1)  
align_keep_tabs       = false  # keep non-indenting tabs  
align_on_tabstop      = true   # always align on tabstops  
align_nl_cont         = false  # align the back-slash \n combo (macros)  
align_enum_equ_span   = 1      # align the '=' in enums  
align_assign_span     = 1      # align on '='. 0=don't align  
align_assign_thresh   = 0      # threshold for aligning on '='. 0=no limit  
align_right_cmt_span  = 8      # align comment that end lines. 0=don't align  
 
align_var_def_span    = 2      # align variable defs on variable (span for regular stuff)  
 
#align_var_def_thresh  = 0      # align variable defs threshold  
 
align_var_def_inline  = true   # also align inline struct/enum/union var defs  
align_var_def_star_style = 1   # the star is part of the variable name  
align_var_def_colon   = false  # align the colon in struct bit fields  
align_var_struct_span = 1      # span for struct/union (0=don't align)  
align_pp_define_span  = 1      # align bodies in #define statments  
align_pp_define_gap   = 1      # min space between define label and value "#define a <---> 16"  
 
align_struct_init_span   = 1      # align structure initializer values  
align_func_proto_span    = 1      # align function prototypes  
align_number_left        = false  # left-align numbers (not fully supported, yet)  
align_typedef_span       = 1      # align single-line typedefs  
align_typedef_gap        = 1      # minimum spacing  
align_typedef_star_style = 1      # Start aligning style  
                                  # 0: '*' not part of type  
                                  # 1: '*' part of the type - no space  
                                  # 2: '*' part of type, dangling  
                                   
 
                                   
                                   
#####################################  
# Newline Adding and Removing Options  
#        Add/Remove/Ignore  
 
nl_fdef_brace        = add    # "int foo() {" vs "int foo()\n{"  
nl_func_decl_start   = ignore # newline after the '(' in a function decl  
nl_func_decl_args    = ignore # newline after each ',' in a function decl  
nl_func_decl_end     = ignore # newline before the ')' in a function decl  
nl_func_type_name    = ignore # newline between return type and func name in def  
nl_func_var_def_blk  = 0      # newline after a block of variable defs  
nl_before_case       = false  # newline before 'case' statement  
nl_after_return      = false  # newline after return statement  
nl_after_case        = false  # disallow nested "case 1: a=3;"  
nl_fcall_brace       = add    # newline between function call and open brace  
nl_squeeze_ifdef     = false  # no blanks after #ifxx, #elxx, or before #endif TRUE/F  
nl_enum_brace        = ignore # nl between enum and brace  
nl_struct_brace      = ignore # nl between struct and brace  
nl_union_brace       = ignore # nl between union and brace  
nl_assign_brace      = ignore # nl between '=' and brace  
nl_class_brace       = ignore # nl between class name and brace  
nl_namespace_brace   = ignore # nl between namespace name and brace  
 
nl_do_brace          = add    # nl between do and {  
nl_if_brace          = add    # nl between if and {  
nl_for_brace         = add    # nl between for and {  
nl_else_brace        = add    # nl between else and {  
nl_while_brace       = add    # nl between while and {  
nl_switch_brace      = add    # nl between switch and {  
nl_brace_else        = add    # nl between } and else  
nl_brace_while       = add    # nl between } and while of do stmt  
 
nl_elseif_brace      = add    # nl between close paren and open brace in 'else if () {'  
 
nl_define_macro      = 0      # alter newlines in #define macros  
nl_start_of_file     = ignore # alter newlines at the start of file  
nl_start_of_file_min = 0      # min number of newlines at the start of the file  
nl_end_of_file       = ignore # alter newlines at the end of file  
nl_end_of_file_min   = 0      # min number of newlines at the end of the file  
 
pos_bool             = start  # end=move &&/|| to EOL ignore=gnore, start=move to SOL  
 
#####################  
# Blank Line Options  
 
nl_before_block_comment   = 3   # before a block comment (stand-alone  
                                # comment-multi), except after brace open  
nl_after_func_body        = 2   # after the closing brace of a function body  
nl_after_func_proto       = 3   # after each prototype  
nl_after_func_proto_group = 3   # after a block of prototypes  
nl_max                    = 2   # maximum consecutive newlines (3=2 lines)  
 
eat_blanks_after_open_brace   = true  # remove blank lines after {  
eat_blanks_before_close_brace = true  # remove blank lines before }  
 
########################  
# Code Modifying Options  
# (non-whitespace)  
 
mod_paren_on_return     = force  # add or remove paren on return  
mod_full_brace_nl       = 1      # max number of newlines to span w/o braces  
mod_full_brace_if       = add    # add or remove braces on if  
mod_full_brace_for      = add    # add or remove braces on for  
mod_full_brace_do       = add    # add or remove braces on do  
mod_full_brace_while    = add    # add or remove braces on while  
mod_pawn_semicolon      = True   # add optional semicolons  
mod_full_brace_function = add    # add optional braces on Pawn functions  
 
 
#######################  
# Comment Modifications  
 
cmt_star_cont    = true   # put a star on subsequent comment lines  
cmt_cpp_to_c     = true   # convert CPP comments to C comments  
cmt_cpp_group    = true   # if UO_cmt_cpp_to_c, try to group in one big C comment  
cmt_cpp_nl_start = true   # put a blank /* at the start of a converted group
cmt_cpp_nl_end   = true   # put a nl before the */ in a converted group  
 
# The filename that contains text to insert at the head of a file if the file doesn't start with a C/C++ comment.  
# Will substitue $(filename) with the current file's name.  
cmt_insert_file_header                   = "file_header"         # string  
cmt_insert_file_footer                   = "file_footer"         # string  
 
# The filename that contains text to insert before a function implementation if the function isn't preceeded with a C/C++ comment.  
# Will substitue $(function) with the function name and $(javaparam) with the javadoc @param and @return stuff.  
# Will also substitute $(fclass) with the class name: void CFoo::Bar() { ... }  

cmt_insert_func_header                   = "func_header"         # string 


原文地址:https://www.cnblogs.com/IS2120/p/6746023.html