⚠️ This lesson is retired and might contain outdated information.

Change the text value of a select node

Khaled Garbaya
InstructorKhaled Garbaya
Share this video with your friends

Social Share Links

Send Tweet
Published 4 years ago
Updated 2 years ago

In this video, you will learn how, in your plugin, to change the text value of a selected text node in Figma

Instructor: [0:00] First, let's add the text input and a button. Let's go ahead and listen to the onclick event on our new button. Now let's get the text value from our input. We will query the document for that. Now we need to send the message to Figma.

[0:28] Let's go ahead and copy this code here. Let's change the type to request. Set text. This is just by convention. You can name the message however you want. We need to send the text in here. Now let's go back to the code part and capture this message.

[1:04] We get the current selection. If the selection is not null, we save the characters to the event.text. We make sure to return here. Now this is set, let's go back to Figma. Plugins, development, my plugin. Let's select the text and type "Hello" and click Set text.

[1:27] Whoa. This is actually not doing anything because we're missing an important step here, which is telling Figma to load that font before applying the text for the note. Let's go back to our code. Before setting the text here, let's call Figma loadFontAsync.

[1:51] We make sure that our function here is async because we need to await this one. This will make sure to load the font that's used by the selection. Let's hit Save and go back to Figma. Now go to the plugins, development, my plugin. Select the text and type, for example, my name. You can see here we're able to change the text.

egghead
egghead
~ an hour ago

Member comments are a way for members to communicate, interact, and ask questions about a lesson.

The instructor or someone from the community might respond to your question Here are a few basic guidelines to commenting on egghead.io

Be on-Topic

Comments are for discussing a lesson. If you're having a general issue with the website functionality, please contact us at support@egghead.io.

Avoid meta-discussion

  • This was great!
  • This was horrible!
  • I didn't like this because it didn't match my skill level.
  • +1 It will likely be deleted as spam.

Code Problems?

Should be accompanied by code! Codesandbox or Stackblitz provide a way to share code and discuss it in context

Details and Context

Vague question? Vague answer. Any details and context you can provide will lure more interesting answers!

Markdown supported.
Become a member to join the discussionEnroll Today