• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Custom IC SKILL
  3. error while setting bindkey

Stats

  • Locked Locked
  • Replies 6
  • Subscribers 144
  • Views 14166
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

error while setting bindkey

Rojalin
Rojalin over 13 years ago

Hi,

I used the following code for setting entrylayer bindkey.

 procedure(entrylayer()

cv=geGetEditCellView()

hiSetBindKey("Layout" "Ctrl<key>1" "leSetEntryLayer(list(\"metal1\"\"drawing")cv)")

)

I am getting the following error:

SYNTAX ERROR found at line 1 column 38 of file *string*
*Error* lineread/read: syntax error encountered in input

 

Can anyone help in this.

Thanks

 

  • Cancel
  • TeeBro
    TeeBro over 13 years ago

     Hi Rojalin,

    The leSetEntryLayer command does not accept the cellview ID as an argument.  The leSetEntryLayer command only

    accepts a layer/purpose pair list.  You do not need the procedure to set the bindkey just the set bindkey line.

    hiSetBindKey("Layout" "Ctrl<Key>1" "leSetEntryLayer( \"metal1\" )")

    Note: If the purpose is not given the command will default to "drawing"

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Rojalin
    Rojalin over 13 years ago
    hi, If i want to set pin purpose layer then by repalcing drawing in my above code it is giving error that too without procedure. what is hould do in that case?? Thanks
    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    The syntax error was due to some quotes not being escaped plus missing spaces. If they had been correct, it would have failed due to the spurious "cv" argument (whatever that was supposed to be) - as the previous poster pointed out.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    hiSetBindKey("Layout" "Ctrl<key>1" "leSetEntryLayer(list(\"metal1\" \"drawing\"))")

    Andrew

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Rojalin
    Rojalin over 13 years ago

    thanks.Its working now.

    But can you please tel me why this slash is required?

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
  • Andrew Beckett
    Andrew Beckett over 13 years ago

    Quotes have to be balanced - if you had a string "some string including "another bit" in quotes" - the string will stop at the quotation mark before another. Then there would be some free words outside the string and then a second string " in quotes". How would the tool know that you really meant the string to encompass the entire sequence and the quotes in the middle to be embedded? This is true of pretty much every language. So, if you want to have a quote within a quote, you need to escape it. The backslash is to escape the quotation mark and stop it being treated as a quotation mark.

    Andrew.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information