EDA365电子工程师网

标题: Allegro中的自定义快捷键(env修改) [打印本页]

作者: juyken    时间: 2012-1-11 21:10
标题: Allegro中的自定义快捷键(env修改)
如何设置allegro的快捷键
! ], V4 r3 n- f" o, J9 g' |修改变量文件,设置自定义快捷键。
* u4 ?- [3 R  V! y5 w/ rAllegro可以通过修改env文件来设置快捷键,这对于从其它软件如protle或PADS迁移过来的用户来说,可以沿用以前的操作习惯,还是很有意义的。. Z/ p" X, q8 s$ }+ i0 P
先说一下Allegro的变量文件,一共有2个,一个是用户变量,一个是全局变量。
, Z/ n0 A2 B* G用户变量文件的位置,通过系统环境变量设置:系统属性-高级-环境变量,其中的Home值就是env所在目录。要注意的是,这里也有两个变量,一个是用户变量一个是系统变量,在用户变量里设置了Home之后就不需要在系统变量里再设置了,如果同时设置的话,会以用户变量的为准而忽略系统变量。比如我在用户变量里设置的Home目录为d:\temp,那么env文件就位于d:\temp\pcbenv内。; B1 @  B# A" p" J3 z/ p
如果没有在系统属性里设置Home变量的路径,那么对于XP,会自动在C:\documents and settings\用户文件夹\pcbenv内产生env文件。对于2000,pcbenv目录位于C盘根目录下。# o7 [; ~* k) [6 U/ z
全局变量的位置,固定为软件安装目录内,比如我的就是:d:\cadence\spb_15.7\share\pcb\text内。) g( h% y6 n+ F2 Z3 b' {
通常建议修改用户变量env文件,而不要修改全局变量env文件,至于为什么,我也不知道
3 a+ S; h4 e& |' S! M! `+ k另外,这2个env文件,用户变量的优先级更高,就是说如果2个文件中的设置出现冲突,那么以用户变量env文件为准。* O5 a7 b. V4 d* k4 ]
好了,搞清楚env文件的位置后,我们就可以来修改了。
. {. l1 I- h7 d0 p$ }! W用户变量env文件,是类似于下面的格式:
, A1 H8 P4 o% K  z, J; a" {source $TELENV; A* w. m! N4 W( o* ^
### User Preferences section9 h9 R0 o/ B$ W  C0 Y, v
### This section is computer generated.
4 {  Y2 a' r9 a### Please do not modify to the end of the file.
, y$ r8 B- ]$ R* |### Place your hand edits above this section.
+ _1 N. e6 w/ D1 k+ |6 Q###5 c( t) E: T# ?; R& O) M2 }
set autosave_time = 15
7 G: j" s0 o, M$ }2 [) ]4 M$ e+ C% Lset autosave1 g! Y! z( L- F9 Q6 L- H7 s) A
我们要设置的快捷键必须放置在### User Preferences section之前。, F: `% _# J2 c5 [  S
设置快捷键指令格式 :
. _- a( d: |. [8 Q3 W" d7 m$ L# Kalias 快捷键 执行的命令$ f+ ]5 m; V! P5 @( v
例:alias Del delete$ Z3 Q; n) J- _, P
我的部分快捷键:
+ X& ]+ f3 R7 i+ F) e7 M- aalias Pgup zoom in
9 ~- Z; \/ s3 B! qalias Pgdown zoom out, x9 x0 @- k6 U( X( H* V
alias End redisplay5 d6 m4 D0 D8 x" e/ Q& T# W7 Z8 ?0 _
alias Insert add connect
% L6 n$ X; R$ c% V+ _alias Home zoom fit
9 A6 i' \( R9 i# U( s3 ialias Del delete
' r+ ?8 y; Z5 J9 ~funckey ‘ ‘ iangle 90
3 J6 Q: x7 Z! I) \8 G3 y1 V扩展技巧:
! Z3 F$ {3 M; i" z7 S7 t& o关于快捷键可替代的命令,并不仅限于一级菜单中原已有快捷键的命令,对于有多级菜单的命令,比如Display-Show rats-Net(点亮单个网络),我们也可以用快捷键代替:alias F9 rats net。这个命令"rats net"会在你执行后出现在右下角cmd:的后面。这样可快捷的命令就随你设置了。
4 J5 Z, i2 ?! c7 s3 D===========================================================================
  A& I: T8 L9 y9 b6 R★Allegro中的快捷键设置说明★, |1 a6 ]& V( }
首先说明一下环境变量文件(evn文件),环境变量文件有两个,它们分别在系统盘的根目录下的pcbevn目录中(比如系统在C盘,那么evn文件将在c:\pcbevn下)和程序安装路径下(如Cadence 设计系统程序安装在D:\Cadence 下,则evn 文件将在4 p) s1 R  A* t$ t4 f! J
D:\Cadence\PSD_15.1\share\pcb\text目录下),前者是本地变量文件,后者是全局变量文件(系统自动建立,即为默认设置)。在本地变量文件中,主要存放的用户参数设置值(Setup->User Preferences..如库文件所在的路径等)。在全局变量文件中主要描述的是:应用程序的工作路径和系统的快捷键定义等等。在启动一个应用程序时,应用程序会根据环境变量中的参数进行初始化。' D: G  b' `5 r. ?' m
Cadence系统是一个比较开放的系统,它给用户留了比较多的定制空间。在Allegro中我们可以用alias或funckey命令来定义一个快捷键,以代替常用的设计命令。要使定义的快捷键产生作用,我们有两种方式来定义:
, ]: T1 I& k1 `  C: B1、在命令窗口直接定义,但这样定义的快捷键只能在当前设计中使用,如果重新启动设计时,快捷键将会失效。命令格式如下:' L6 e7 d6 M8 ~% X# O3 ]
alias shortkey Keyboard Commands
( U. L9 U' H' f$ H5 u$ U* a. Mfunckey shortkey Keyboard Commands
+ y+ {% s  e0 y- V3 @注意:1)如果直接键入alias或funckey命令然后回车,系统将会弹出所有快捷键列表,这相当于执行Tools->Utilities->Aliases/Function keys..命令。
- h5 S- j! d* `, v  P7 v/ \  2)alias命令不能用来定义字母,原因是字母键要用来输入命令行。但是funckey命令可以用来定义单个字母为快捷键,它比alias命令更为强大,alias能定义的它都能定义,但是字母被定义成某快捷键后,该字母就不能用来输入键盘命令了。
; W6 I9 j3 T1 y& `! z  V" e- N  3)Allegro 中的所有键盘命令(Keyboard Commands )列表可以通过执行Tools->Utilities->Keyboard Commands 命令来查看,这些命令都可以设置成快捷键。/ D# g$ h1 P* b. ?6 ], B4 [
2、在本地环境变量文件中直接定义,这样定义的命令将长期有效。本地的环境变量文件是evn文件(c:\pcbevn),我们可以对它进行编辑。我们的alias命令可以在第二行开始写(第一行是:source $TELENV),例如我们以前在Protel 或PowerPCB 中常用的放大、缩小命令就可以如下定义:+ c; ^* W4 d0 d$ f# d$ T5 q
alias Pgdown zoom out
; R8 c% U1 w6 A! V6 K( m0 Halias Pgup zoom in
3 M9 {, X- u! N2 c6 b另外我们经常用alias命令来定义以下几个常用的shortkey:; Y0 r- M/ E4 X9 u
alias ~R angle 90(旋转90 度)% }. K" L: }* }6 N! K' |
alias ~F mirror(激活镜相命令)2 [7 `0 J7 P4 m" ]- y. h+ X
alias ~Z next(执行下一步命令)1 _4 q* R4 V" z3 t% j! ~
alias End redisplay(刷新屏幕)
! z$ e( j- z+ a6 F: t9 Salias Del Delete(激活删除命令)
* {3 ^! W3 a; \% f* ialias Home Zoom fit(全屏显示), o% k4 w& v! d  L# h
alias Insert Define grid(设置栅格)
; j/ `8 t7 w/ E$ u7 V下面我们将常用的几个命令或快捷键做一个说明:
5 L9 d2 R" l$ x& U! Z" {. t一、常用键盘命令在allegro中有很多键盘命令,它是通过键盘输入来激活或执行相关的命令。键盘) i, T. [! |; d4 v: b, i' H
命令基本上包含了大部分的菜单命令。下面列举几个常用的键盘命令。 1、x 100:Y 坐标不变,X方向移动100 个单位值(以设定的原点为参考点) 2、y 100:X 坐标不变,Y方向移动100 个单位值 3、x 100 100:移动到(100,100)坐标处 pick 命令与上面的x 或y 命令功能相同,只是在执行pick 命令时会弹出一个窗口,输入想要的# Z1 a- B8 T0 _$ y) p  G
坐标值就可以,与上面相对应,pick 命令也提供三种模式:pick 、pickx 和picky 。4、mirror :激活镜相命令(本命令是先激活,后选择要镜相的对象)。5、rotate :激活旋转命令(本操作要先选取对象,后执行该命令)6、angle 90: 旋转90 度(本操作要先选取对象,后执行该命令)
/ ?5 N* d/ l& K. o% |$ w二、常用快捷键alias F2 done :结束当前命令alias F3 oops :取消前一次操作alias F4 cancel :取消当前命令alias F5 show element :激活“属性显示”命令alias F6 add connect :执行布线命令alias F7 vertex :激活“增加倒角”命令alias F8 zoom points :点取放大alias F9 zoom fit :满屏显示alias F10 zoom in :放大窗口alias F11 zoom out :缩小窗口alias F12 property edit :激活“属性编辑”命令funckey + subclass -+ :切换到下一层funckey - subclass --:切换到上一层.
3 m" s, n/ [0 M6 @2 \# c: w2 W4 A# m0 k* J# F1 is normally reserved by the system for Help so we don't use it
' u! J1 h6 j, X7 y% g0 A' ]( balias F12 toggle: Q7 e% r. g5 V8 D1 |" r. ?
alias F11 zoom out
% y! K! Q/ i  A5 Lalias F10 zoom in
9 d# p$ M2 l! Y0 u& B" b. J+ M  Q, halias F9 add connect4 O9 `! z+ g1 N1 L5 |) F: R% N* p+ @
alias F8 oops
; r# ?2 ]# p2 I# Y! r: Falias F7 cancel * o  B6 a2 I7 r9 O# X
alias F6 property edit
5 ^) A9 ?( w* M+ n( e% }/ [3 S5 D- G: Ualias F5 show element6 u5 p/ ]1 z- G; K8 }
alias F4 pop swap
1 S# d) _3 g1 Z4 U7 A( Balias F3 set acon_oldcmd
+ B( [( _1 R* t- oalias F2 unset acon_oldcmd) E# M( v: I+ ]% g; w
alias Del slide/ L4 h) O. w6 w  e& `
alias Insert custom smooth ' j: M% a- {- i* q7 H
alias Home zoom fit: K" e) ~* S2 C) ?
alias End redisplay" J5 c0 m1 j+ p' Q; w9 d
alias Pgup rotate  K9 }' q% z4 |+ y5 \2 c2 Z8 }4 H
alias Pgdown move
; ^# v8 q' u& ?: U5 l$ Z& Ralias ~N new
  g) E$ ~: H$ [+ X* |: kalias ~O open% i- _1 f+ K7 m* H
alias ~S save5 X+ p- ?4 U+ W8 {
alias ~X cup
6 |! B3 N- Q% X; ?' C1 |alias ~G Define grid
7 i' A' h" L% D* y; ~' W) D' Lalias ~R show measure# l0 b5 R! o/ r. h' t/ X
alias ~L mirror0 [/ w2 U6 u3 m  z# d3 H. q1 g
alias ~A save_as
; u# X5 i1 g8 l8 Malias ~E change
6 v( m7 P' ~' o" Q' C, x! Rfunckey + subclass -+
- L, D+ c7 n4 b" b- H6 Hfunckey - subclass --# a5 P. Q" R# E+ T) W& \  K7 A6 H
#---------------------------------------------------------------------------------------------------& Z3 D7 s* m8 Q6 T
# Script Aliases      Description
' O: [* N) g, A#---------------------------------------------------------------------------------------------------
6 p  D4 k9 J, T( Q' [4 J& ^alias g.1 "replay gp1"   # sets grid to 0.1 mil/ D  B8 @6 @2 j7 |, n0 x% a
alias g.3225 "replay gp3225"
0 M' s7 k7 A* I8 C# palias g.532 "replay gp532"# ^- H/ R, n# ~, z$ C5 k
alias g.25 "replay gp25"/ g2 J% S) c- e, S7 l. ]
#--------------------------------------------------------------------
0 p3 O) J9 C& }- S3 L5 w  i# OTHER ALIASES
' u* R/ s7 p; K! Z3 [8 a9 ^alias edps padedit
3 M6 W4 a' ?, o" I/ i, z4 V9 Ualias rps "replace padstack"* Q' b6 u+ L: Z& {; m+ G3 d
alias unplrp report unplaced9 R0 K, A/ ]5 ~- R0 ~% [
alias x pick7 |6 H: q" z- h+ o2 E7 h
alias y pick l1 z& d- S8 f" ?8 x# H
alias ix ipick
* b' \% t7 D0 }* s+ Oalias iy ipick 00 `* x  C$ f3 K
alias reopen 'open -q $module'
; ]' O( t2 m; t5 H5 W( e# autoroam" z. y  T( k" e7 j/ W5 O% E& N
alias sar set pcb_autoroam* L/ f; ^8 o% y- y
alias uar unset pcb_autoroam
3 e: V# d/ L2 f$ z0 [! g, z/ Ralias reopen 'open -q $module'
) J( Z, r1 [) m7 b9 n; Zalias bubset 'settoggle shove_mode Off "Hug preferred" "Shove preferred"; options bubble_space $shove_mode'; G( @8 ~4 [) `
alias ~B bubset
  h0 R) e, k; v/ walias smoothset 'settoggle smooth_mode Off Minimal Full; options smooth_level $smooth_mode', e7 C8 D/ j& t$ Z) M6 b8 W
alias ~C smoothset
+ P6 c* T7 a6 N) f3 X
; _) |, v3 L+ a  ]  P7 I: N#--------------------------------------------------------------------# V: Z1 n% P. v
# COMMAND DEFAULTS. k- A& e" ?( n
# allow slide to work on arcs by default
- C9 t5 C% A& f1 O- Bset slide_arcs
: F5 X& `' O) o5 w8 H( E7 a# Compatibility aliases
" [; y+ o3 a; w2 a5 v+ S2 J8 [alias window zoom
3 A+ W4 u* C" M9 y9 H# dalias hilite hilight
1 U, \, h# p3 P. e2 W- Salias dehilite dehilight
9 q, j3 t7 S3 Q7 x: yalias pickx pick
' r. p5 j) B5 V- l9 ?alias picky pick l
9 Q2 t- p' M/ p, r& E8 M0 w6 kalias ipickx ipick" c4 i3 g8 O6 {7 u. ~' n3 N
alias ipicky ipick 0
/ p. J: p: ?; M) V+ s1 l3 Csource -q $ALLEGRO_SITE/site.env3 \) ?; T# |3 n, n# N
### User Preferences section. t2 E3 ~3 H: i
### This section is computer generated.
5 Y8 v) b& J9 D: v& `### Please do not modify to the end of the file.
. |3 ~8 E5 G, M$ ?. ~### Place your hand edits above this section.
8 p6 {, y$ f+ h: Q% T$ X###. k6 {3 X" T& r$ v3 a+ X
set autosave_time = 10, d# k1 B1 [5 H5 j8 L( ~6 z( t9 c
set autosave
3 [  T5 s. F/ p. oset scriptpath = C:\pcbenv\scripts! E" L% r4 U7 `: E
set clippath = .
! D/ H# o; X+ O- O) |* @set devpath = F:\work\cadence\allegro\lib\devices\
: S+ m' w( _7 jset padpath = F:\work\cadence\allegro\lib\pad\- n* K" z) o2 P! S, c' A; w! I
set psmpath = F:\work\cadence\allegro\lib\symbols\
7 K3 U4 {" b2 H8 Fset display_nodynamicarcwidth$ g" a# k  V3 C# t* k% f
set display_nohilitefont
2 T4 ]( Z( h+ m0 _unset display_nolinewidth
) D* L; L) Z/ O; c+ Dunset display_noskeletal_draw' Y4 ~5 g( F, F5 Z6 F/ @8 ]. N. L
unset bug_solaris_hlt_lines. \* d2 C& P3 B2 o+ w6 t# `
set display_nocolor_dynamics, {( n5 n: d6 ~: \; c/ L6 X  B$ P
unset display_raster_ops! u4 v3 Z: g/ [1 X% L
set display_backingstore = on, C$ ^' P0 M  S  D2 K
set display_nosaved_geometry = size5 g: F+ B0 m) o1 `2 x
set display_manual_colorpriority3 \6 e# k/ v" u7 \
unset display_drcfill
, j' |& u. s1 r3 qset gloss_pad_shape1 l# [' |. l$ x
unset no_dynamic_zoom7 [6 E. Y& T; q' O3 T1 q
set no_zoom_to_object
- c! a7 ^- T+ {set no_dragpopup) ~. y3 E* x9 ~+ y- L
set noswapripup
" L# ?/ g  }* Z/ e, `5 Aset logic_edit_enabled5 t2 ?) U0 Z7 K# R7 y( e
unset no_shape_fill
' _. Z1 C1 z; s1 I3 N! b& qset new_shape_fill_nt1 M4 \/ Q8 l, V1 ~
set pcb_cursor = infinite
; K9 Z) O( Y4 o3 E//===============================================================================/ v0 {: h+ J9 F( z$ ]" [) e& L
protel老手 初学allegro自定义的一些类protel快捷键
6 d6 S2 u+ `+ f! V/ o嘿嘿,自成为老手估计要被n多人鄙视了,不过好歹用protel也7年了快,不老也不小吧; J4 ~! ?2 h3 f+ n# E) l/ P% V9 g
最近因为项目的需要,必须学习cadence了,硬着头皮看了两天教程了,目前不是很烦allegro了,hehe
! }/ }* ^5 ]) N4 e4 _, v学会了定义快捷键,但是因为不熟悉cadence中的相应命令所以只定义了一点) o. i; ]$ J2 L* h$ ~
funckey mm move                  移动物体
1 c' {% X& {+ P2 i' l, Bfunckey xa dehilight             取消点亮 $ r4 X, d: X* ?' m# {
funckey sn hilight                 点亮
3 M, ?, d9 R4 |1 ^5 efunckey l mirror                   镜像放置物体
) B% k' N0 ^" Nfunckey g Define grid              定义栅格
* `; n, h& G1 y8 @( Q7 Wfunckey pl add line                画线(非连接线)
# S; B# h5 h& [3 Cfunckey pt add connect             画连接线
( }+ K; ~+ z7 p8 [. R8 F' _funckey ps add text                添加字符
9 {, \2 l1 @! Q) efunckey tp color                   定义颜色
7 z' q# V1 G4 nalias Pgdown zoom out               ; m  h7 M7 S$ R7 m, O5 Y4 K( {) s
alias Pgup zoom in
; M# y! J: w1 N6 |/ @alias Space angle 90                无效???
' n% k, l5 ?; ralias ~Z oops                       上一步
. l: O7 t7 c$ X( }5 I9 I/ oalias End redisplay
. e4 q4 J0 g2 |- Zalias Del Delete
% H4 Q2 W8 H3 \" z9 M# _alias Home Zoom fit
( h+ F& l. h& Qalias Esc cancel
$ o% p) D5 @; d0 afunckey rm show measure             显示距离
, H# e/ h9 e+ |funckey dk define xsection          定义叠层结构
+ I% Y0 q0 v, V7 B都是针对protel中习惯的快捷键定义的,还有很多没有定义,例如隐藏所有鼠线 nha,但是不知道cadence中隐藏所有鼠线的文字命令是什么所以没法写
1 \( A& p( w: a; ~类似的显示所有鼠线nsa2 N* P& N5 A9 t/ E5 |
在鼠标已有命令的情况下取消所有点亮eea,在cadence中也不知道怎么表示
# |# z( `1 B' L4 rprotel引进网表 DN               cadence ??
* w$ y* a* }! V1 p; v           查看plane分割DI         ??
" L( p/ V. {! h  f            修改polygen的边界EMV     ??
$ k: B3 V/ f" k+ J5 L; O           。。。。。。。。。。。。。。。。。。。0 F$ D  @  M$ z+ Q
还有很多了,protel最大的好处就是键盘快捷命令多而且一幕了然,真希望cadence中能定义到所有的protel命令,这样protel转cadence估计也就是1周的事情了,哈哈,我说的是PCB布线,不包括SI等应用啊5 q6 s3 I8 `( J9 m+ E
希望大家一起来完善protel到cadence的快捷键转换  d) u! O& U0 ~' O

作者: liweijie    时间: 2012-1-16 11:32
谢谢分享!
作者: GQGY211    时间: 2012-3-29 09:29
:lo小顶一下
作者: Murphy    时间: 2012-3-29 11:10
收藏了
作者: 297469214    时间: 2012-6-8 15:53
学习了
作者: ccx3564554    时间: 2012-6-10 21:06
谢谢啦
9 a8 J) h, v) H5 X3 Z
作者: chenlinfeng88    时间: 2012-8-6 07:59
学习了
作者: jccj_wan    时间: 2012-8-9 17:41
之前修改过env使用快捷键成功,这次重装cadence后依照之前的方法:我的电脑-->高级-->环境变量,home指向e:\spb_data,找到其文件下的pcbenv文件夹,打开后发现没有env!什么问题??求指教呀..
作者: juyken    时间: 2012-8-10 12:27
jccj_wan 发表于 2012-8-9 17:41 , a  Y! ~# x: s4 P
之前修改过env使用快捷键成功,这次重装cadence后依照之前的方法:我的电脑-->高级-->环境变量,home指向e: ...
; K2 R6 ^0 r; t5 S
你可以在    安装路径:\cadence\spb_15.7\share\pcb\text中修改env文件
作者: jccj_wan    时间: 2012-8-10 13:40
juyken 发表于 2012-8-10 12:27 ' t; H7 f- e2 |" O# m6 x
你可以在    安装路径:\cadence\spb_15.7\share\pcb\text中修改env文件
7 F& \3 |! ?+ Z- ]) K
你说的目录下的这个env不敢乱改... 谢谢
: N' R. I% u: w# C/ M4 F' S/ A6 E 我的问题已经解决了
作者: claire111    时间: 2013-2-27 21:56
请问16.5能修改吗,我照着你的办法改不了啊
作者: yanjun2yy    时间: 2013-7-1 18:48
好东西啊,谢谢分享
作者: jasonxiao    时间: 2013-9-14 16:42
jccj_wan 发表于 2012-8-10 13:407 S; j0 j$ t1 R' S
你说的目录下的这个env不敢乱改... 谢谢 3 _/ G$ C. ^# l8 `
我的问题已经解决了

' F* z) b( Z9 Q1 T我的也是,即使更改了EVN也没办法定义快捷键啊,是怎么回事呢?
作者: downloade    时间: 2015-2-6 17:56

作者: zxy8517    时间: 2017-4-11 10:00

$ X* Q5 g2 q: m5 [2 p学习了
作者: jxiao5    时间: 2017-11-16 17:08
赞一个' T& c* S  R0 a, T9 c# g

作者: laycad    时间: 2018-2-6 16:00
谢谢楼主




欢迎光临 EDA365电子工程师网 (http://bbs.elecnest.cn/) Powered by Discuz! X3.2