找回密码
 注册
关于网站域名变更的通知
查看: 1886|回复: 29
打印 上一主题 下一主题

怎么写一个skill, 在每次打开allegro时自动加载skill文件啊?

[复制链接]
  • TA的每日心情
    开心
    2020-7-21 15:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2020-12-7 15:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    怎么写一个skill, 在每次打开allegro时自动加载skill文件啊?
  • TA的每日心情
    慵懒
    2025-8-25 15:23
  • 签到天数: 85 天

    [LV.6]常住居民II

    推荐
    发表于 2022-2-8 18:41 | 只看该作者
    自用的代码。供参考。可以加载所有il和ile,但ile需要手动录入(无法避免!)

    1. ;additional skill path be added here. one path for one line.
    2. setSkillPath(append1(getSkillPath() "D:/il" ))
    3. setSkillPath(append1(getSkillPath() "D:/allegro_skill"))
    4. ;load all the files of skill path.
    5. foreach(dir cdr(getSkillPath())        ;;use cdr to void duplicated loading
    6.         when(files = rexMatchList(".*\\.il$" getDirFiles(dir))
    7.                 printf("Loading Skill files from %L\n" dir)
    8.                 foreach(file files
    9.                         printf("loading: %s\n" file)
    10.                         load(strcat(dir "/" file))
    11.                 )
    12.                 printf("\n")
    13.         )
    14. )
    15. ;TO ADD
    16. ;encrypted files ADD here.
    17. foreach(file `(
    18.                 ("mytools.ile" "deargds")
    19.                 ("align_text.ile" "deargds")   
    20.                 ("ps_DanglingObjects.ile" "www.pcbskill.com")
    21.                 ("x_cline2shape.ile" "www.eda365.com")
    22.                 ("x_align_via.ile" "www.eda365.com")
    23.                 ("x_mc_ro_text.ile" "www.eda365.com")
    24.                 ("cline_segs_cut.ile" "www.allegro-skill.com")
    25.                 ("route_keepout_pad.ile" "sylar")
    26.                 ("ch_via_net.ile" "www.allegro-skill.com")
    27.                 ("x_check_line90.ile" "www.eda365.com")
    28.                 ("set_grids.ile" "www.allegro-skill.com")
    29.         )
    30. ;load encrypted files.
    31.         printf("loading: %s\n" car(file))
    32.         load(car(file) cadr(file))
    33. )
    复制代码

    点评

    我的p004版本用这个加载直接报错崩溃,是需要打补丁吗?  详情 回复 发表于 2023-4-18 23:50
  • TA的每日心情
    开心
    2022-5-6 15:29
  • 签到天数: 34 天

    [LV.5]常住居民I

    推荐
    发表于 2020-12-8 11:27 | 只看该作者
    caoqin 发表于 2020-12-8 10:03
    嗯嗯,是的,我知道这种方法。 我是想写一个skill,在ilinit里只加载这一个skill,就可以加载其他所有的ski ...

    给你提供部分源码,其实不难写
    foreach(skillPath getSkillPath()
          foreach(file getDirFiles(skillPath)
                ext = car(last(parseString(file ".")))
                when(ext == "il"   ; 文件后缀名
                      load(file)        ; 加载无密码的skill文件
                )
          )
    )

    点评

    你这个只能一次加载无密码的啊,有密码的呢  详情 回复 发表于 2020-12-8 13:52

    该用户从未签到

    4#
    发表于 2020-12-7 16:16 | 只看该作者
    如果要dk.scr文件适用所有项目,则做以下步骤
    a.把dk.scr文件保存在安装目录下
    D:\Cadence\SPB_Data\pcbenv\script
    b.env文件中增加如下语句
    Funckey dk replay D:\Cadence\SPB_Data\pcbenv\script\dk

    点评

    但是每次要输入命令加载啊,如果是自动加载呢  详情 回复 发表于 2020-12-7 16:51
  • TA的每日心情
    开心
    2020-7-21 15:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    5#
     楼主| 发表于 2020-12-7 16:51 | 只看该作者
    wwh950509 发表于 2020-12-7 16:16
    如果要dk.scr文件适用所有项目,则做以下步骤
    a.把dk.scr文件保存在安装目录下
    D:\Cadence\SPB_Data\pcbe ...

    但是每次要输入命令加载啊,如果是自动加载呢
  • TA的每日心情
    开心
    2019-11-19 15:32
  • 签到天数: 1 天

    [LV.1]初来乍到

    6#
    发表于 2020-12-8 09:50 | 只看该作者
    在你 allegro 安裝目錄 ex: E:\A16.6 ;  的 PCBENV 目錄下自己產生 Allegro.ilinit
    E:\A16.6\PCBENV\Allegro.ilinit
    內容如下
    setSkillPath(buildString(append1(getSkillPath()  "C:/pcbenv/skill")))
    load("aaa.il")
    load("ccc.il")
    load("eee.il")



    然後將 aaa.il ccc.il eee.il 放在 C:/pcbenv/skill 即可 (allegro 啟動時就會自動載入, 如果有error 也會show出來)

    点评

    支持!: 5.0
    支持!: 5
    支持你! 但版主要SKILL 叫 skill .........用*.SCR吧.  发表于 2020-12-8 16:22
    嗯嗯,是的,我知道这种方法。 我是想写一个skill,在ilinit里只加载这一个skill,就可以加载其他所有的skill.  详情 回复 发表于 2020-12-8 10:03
  • TA的每日心情
    开心
    2020-7-21 15:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    7#
     楼主| 发表于 2020-12-8 10:03 | 只看该作者
    jet2001 发表于 2020-12-8 09:50
    在你 allegro 安裝目錄 ex: E:\A16.6 ;  的 PCBENV 目錄下自己產生 Allegro.ilinit
    E:\A16.6\PCBENV\Alleg ...

    嗯嗯,是的,我知道这种方法。 我是想写一个skill,在ilinit里只加载这一个skill,就可以加载其他所有的skill.

    点评

    这个很简单:比如skill文件b.il c.il d.il放在skill默认路径下,在A.il文件里面写入以下三行代码: load("b.il") load("c.il") load("d.il") 然后在allegro.ilinit文件里面写入load("A.il"),启动allegro后b c  详情 回复 发表于 2020-12-8 12:13
    给你提供部分源码,其实不难写 foreach(skillPath getSkillPath() foreach(file getDirFiles(skillPath) ext = car(last(parseString(file "."))) when(ext == "il" ; 文件后缀  详情 回复 发表于 2020-12-8 11:27

    该用户从未签到

    8#
    发表于 2020-12-8 12:13 | 只看该作者
    caoqin 发表于 2020-12-8 10:03
    嗯嗯,是的,我知道这种方法。 我是想写一个skill,在ilinit里只加载这一个skill,就可以加载其他所有的ski ...

    这个很简单:比如skill文件b.il  c.il  d.il放在skill默认路径下,在A.il文件里面写入以下三行代码:
    load("b.il")
    load("c.il")
    load("d.il")
    然后在allegro.ilinit文件里面写入load("A.il"),启动allegro后b c d这三个skill文件就会自动被加载了!

    点评

    试过,还是不能自动加载,要重新把写的这个加载skill 运用一次,才会加载其他的skill.  详情 回复 发表于 2020-12-8 13:53
  • TA的每日心情
    开心
    2020-7-21 15:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    9#
     楼主| 发表于 2020-12-8 13:52 | 只看该作者
    leilei4908 发表于 2020-12-8 11:27
    给你提供部分源码,其实不难写
    foreach(skillPath getSkillPath()
          foreach(file getDirFiles(ski ...

    你这个只能一次加载无密码的啊,有密码的呢

    点评

    源码都给你了自己改下程序就行了啊官方提供的 sklangref.pdf 就有介绍 load 这个函数功能  详情 回复 发表于 2020-12-8 14:15
  • TA的每日心情
    开心
    2020-7-21 15:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    10#
     楼主| 发表于 2020-12-8 13:53 | 只看该作者
    這侽孓譙悴丶 发表于 2020-12-8 12:13
    这个很简单:比如skill文件b.il  c.il  d.il放在skill默认路径下,在A.il文件里面写入以下三行代码:
    lo ...

    试过,还是不能自动加载,要重新把写的这个加载skill 运用一次,才会加载其他的skill.

    点评

    不需要,一直使用的方法,除非你说的有误或者没能理解我的意思!  详情 回复 发表于 2020-12-8 13:56

    该用户从未签到

    11#
    发表于 2020-12-8 13:56 | 只看该作者
    caoqin 发表于 2020-12-8 13:53
    试过,还是不能自动加载,要重新把写的这个加载skill 运用一次,才会加载其他的skill.

    不需要,一直使用的方法,除非你说的有误或者没能理解我的意思!

    点评

    能不能看看你的编码,估计我的编码有问题  详情 回复 发表于 2020-12-8 14:02
  • TA的每日心情
    开心
    2020-7-21 15:50
  • 签到天数: 1 天

    [LV.1]初来乍到

    12#
     楼主| 发表于 2020-12-8 14:02 | 只看该作者
    這侽孓譙悴丶 发表于 2020-12-8 13:56
    不需要,一直使用的方法,除非你说的有误或者没能理解我的意思!

    能不能看看你的编码,估计我的编码有问题
  • TA的每日心情
    开心
    2022-5-6 15:29
  • 签到天数: 34 天

    [LV.5]常住居民I

    13#
    发表于 2020-12-8 14:15 | 只看该作者
    caoqin 发表于 2020-12-8 13:52
    你这个只能一次加载无密码的啊,有密码的呢

    源码都给你了自己改下程序就行了啊官方提供的 sklangref.pdf
    就有介绍 load 这个函数功能

    头像被屏蔽
  • TA的每日心情
    开心
    2025-1-23 15:05
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    14#
    发表于 2020-12-8 16:28 | 只看该作者
    提示: 作者被禁止或删除 内容自动屏蔽

    该用户从未签到

    15#
    发表于 2020-12-16 09:40 | 只看该作者
    fanyskill发过这样的教程

    “来自电巢APP”

    该用户从未签到

    16#
    发表于 2022-1-31 18:55 | 只看该作者
    本帖最后由 digitzing 于 2022-1-31 18:58 编辑

    axlCmdRegister("Reload_Skill" 'Reload_Skill)
    procedure(Reload_Skill()
    load("MyToolbarChs.iltemp" "")
    load("MyLayer.il" "")
    load("Mycolor.il" "")         
    )

    Reload_Skill()

    最后这句是让前面的跑起来,很关键


    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-9-4 23:55 , Processed in 0.140625 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表