These days, I have been suffering from the absence of a good OpenGL editing tool. Recently I saw that some files can be added to ultraedit, so I searched for some files on the Internet.Article.
In fact, very simple, after the installation of ultraedit to the official online download a file on OK, the link is as follows: http://www.ultraedit.com/files/wf/verilog2001.uew (later in my use process found on the official website of this file may be used problems, later, I found a better one on the Internet and posted it below (see the appendix). The settings in it are quite comprehensive. I used javaslog2001 and the official website also had a Tilde. UEW, but I don't know what their difference is. Select all the webpage content, copy it to a file, and change the suffix to. UEW (for example, verilog2001.uew ). Put it in c: \ Documents ents and Settings \ sun \ Application Data \ idmcomp \ ultraedit \ wordfiles (note: this is not the installation folder of UE, you can put C: \ Documents and Settings \ sun \ Application Data \ idmcomp \ ultraedit \ wordfiles copy this file to your address bar to open it. Remember to change sun to your computer's user name ), then you can.
Supplement:
In. the UEW file has a row display/L20, Which is because ue supports 20 types of syntax by default. You can change this 20, as long as you ensure that it is your current C: \ Documents and Settings \ sun \ Application Data \ idmcomp \ ultraedit \ wordfiles the maximum number of all files in the folder/L * (my files are/14, because the maximum number of all my other files is/13 ).
1: Fold
Since the start and end of each part of the OpenGL is indicated by begin and end, the function is equivalent to the braces in C language. Add the following to the corresponding language of wordfile.txt:CodeYou can:
/Open fold strings = "begin" "case"
/Close fold strings = "end" "endcase"
In addition to begin and end, a pair of case and endcase can also be folded. In the same way, you can add the folding flag you need.
2: added the auto indent function.
In wordfile.txt, there is a syntax for controlling automatic indentation. Auto indent means entering begin, and adding a tab in the next line; entering end, and returning a tab in the next line. You can add different indentions to achieve automatic indention. For example:
/Indent strings = "begin" "case" "fork" "if" "else"
/Unindent strings = "end" "endcase" "join" "else"
3: You can also add other custom functions, such as the function call function.
Appendix: (original address: http://hi.baidu.com/rabbitfff/blog/item/d78e0fad1601f1004a36d617.html)
/L14 "maid-1364" line comment = // block comment on =/* block Comment off = */block comment on ALT = (* block Comment off alt = *) string chars = "file extensions = V VL VMD
/Delimiters = ~! @ % ^ & * ()-+ = |\/ {} []:; "<>,
/Function string = "% [^ t] + + ^ (config [^ t ^ p] + [a-zA-Z0-9 _] + ^ )"
/Function string 1 = "% [^ t] ++ ^ (module [^ t ^ p] + [a-zA-Z0-9 _] + ^) [^ t ^ p] + + [(; #]"
/Function string 2 = "% [^ t] ++ ^ (task [^ t ^ p] + [~ (;] + ^) [^ T ^ p] + + [(; #]"
/Function string 3 = "% [^ t] ++ ^ (function [^ t ^ p] + [~ (;] + ^) [^ T ^ p] + + [(; #]"
/Function string 4 = "% [^ t] ++ ^ (primitive [^ t ^ p] + [~ (;] + ^) [^ T ^ p] + + [(; #]"
/Function string 5 = "begin [^ t ^ p] + + ^ (: [^ t ^ p] + + [a-zA-Z0-9 _] + ^ )"
/Indent strings = "begin" "case" "fork" "specify" "table" "Config"
/Unindent strings = "end" "endcase" "join" "endspecify" "endtable" "endconfig"
/Open fold strings = "module" "task" "function" "generate" "primitive" "begin" "case" "fork" "specify" "table" "Config ""' ifdef"
/Close fold strings = "endmodule" "endtask" "endfunction" "endgenerate" "endprimitive" "end" "endcase" "join" "endspecify" "endtable" "endconfig ""' endif"
/C1 "keywords"
Always and assign automatic
Begin Buf bucket 0 bucket 1
Case casex casez cell CMOS config
Deassign default defparam design disable
Edge else end endcase endconfig endmodule endfunction endgenerate endprimitive endspecify endtable endtask event
For force forever fork Function
Generate genvar
Highz0 highz1
If ifnone initial inout input instance integer
Join
Large liblist library localparam
Macromodule medium Module
Nand negedge NMOS none nor noshowcancelled not found 0 notif1
Or output
Parameter pulsestyle_onevent pulsestyle_ondetect PMOS posedge primitive pull0 pull1 pullup pulldown
Real realtime Reg release repeat rcmos rnmos rpmos rtran rtranif0 rtanif1
Scalared showcancelled signed small specify specparam strength strong0 strong1 supply0 supply1
Table task time Tran tranif0 tranif1 tri tri1 tri0 triand trior trireg
Use
Vectored
Wait wand weak0 weak1 while wire wor
Xnor XOR
/C2 "system"
**.
** 'B' o 'o 'D' D 'H' h'sb 'SB' So 'sd' sh'sh'sb 'SB 'So 'So 'sd' sd'sh' sh
** $
$ Async $ and $ array $ async $ and $ plane $ async $ NAND $ array $ async $ NAND $ plane $ async $ nor $ array $ async $ nor $ plane $ async $ or $ array $ async $ or $ plane
$ Bitstoreal
$ Countdrivers
$ Display $ displayb $ displayh $ displayo
$ Dist_chi_square $ dist_erlang $ dist_exponential $ dist_normal $ dist_poisson $ dist_t $ dist_uniform
$ Dumpall $ dumpfile $ dumpflush $ dumplimit $ dumpoff $ dumpon $ dumpportsall $ dumpportsflush $ dumpportslimit $ dumpportsoff $ dumpportson $ dumpvars
$ Fclose $ fdisplayh $ fdisplay $ fdisplayf $ fdisplayb $ ferror $ fflush $ fgetc $ fgets $ finish $ complete $ fmonitor $ fmonitlf $ empty $ fopen $ fread $ fscanf $ fseek $ fsscanf $ fstrobe $ fstrobebb $ fstrobef $ fstrobeh $ ftel $ fullskew $ fwriteb $ fwritef $ fwriteh $ fwrite
$ Getpattern
$ History $ hold
$ Incsave $ Input $ itor
$ Key
$ List $ log
$ Monitorb $ monitorh $ monitoroff $ monitoron $ monitor $ monitoro
$ Nochange $ nokey $ nolog
$ Period $ printtimescale
$ Q_add $ q_exam $ q_full $ q_initialize $ q_remove
$ Random $ readmemb $ readmemh $ realtime $ realtobits $ recovery $ recrem $ removal $ reset_count $ reset $ reset_value $ restart $ rewind $ rtoi
$ Save $ scale $ scope $ sdf_annotate $ setup $ setuphold $ sformat $ showscopes $ showvariables $ showvars $ signed $ skew $ sreadmemb $ sreadmemh $ stime $ stop $ strobeb $ strobe $ strobeh $ strobeo $ swriteb $ swriteh $ swriteo $ swrite $ sync $ and $ array $ sync $ and $ plane $ sync $ NAND $ array $ sync $ NAND $ plane $ sync $ nor $ array $ sync $ nor $ plane $ sync $ or $ array $ sync $ or $ plane
$ Test $ plusargs $ time $ timeformat $ timeskew
$ Ungetc $ unsigned
$ Value $ plusargs
$ Width $ writeb $ writeh $ write $ writeo
/C3 "operators"
!
%
&
*
+
,
-
///
:
;
<
=
>
?
@
^
{
|
}
~
/C4 "directives"
**'
'Accesserate' autoexepand _ vectornets
'Celldefine
'Default _ nettype' define 'default _ decay_time 'default _ trireg_strength 'delay _ mode_distributed' delay _ mode_path 'delay _ mode_unit' delay _ mode_zero
'Else' elsif' endcelldefine 'endif 'endprotect 'endprotected' expand _ vectornets
'File
'Ifdef 'ifndef 'include
'Line
'Noaccelerate' noexpand _ vectornets 'noremove _ gatenames 'noremove _ netnames' nounconnected _ drive
'Protect' protected
'Remove _ gatenames 'remove _ netnames' resetall
'Timescale
'Unconnected_drive 'undef 'uselib
/C5 "delaysparametersescaped"
#
**\