**Created**:: [[2021-08-29 Sunday]] **Link**:: https://youtu.be/q8KF3flIyKs **Duration**:: 58:35 ![The Clothesline Method Part 1: Detailed automation case study with Obsidian-Excalidraw](https://youtu.be/q8KF3flIyKs) # Summary In this video, the presenter demonstrates their development workflow for automating the Clothesline Method using Obsidian and Excalidraw. The Clothesline Method, inspired by Stephen Pressfield, serves as a visual approach to organizing thoughts and projects by connecting various elements between a starting point and an endpoint. The presenter shares practical steps to enhance workflow efficiency through automation, providing insights on creating cards with actions and details, and managing text elements for optimal organization. # Key Takeaways - The Clothesline Method can be applied to diverse fields, including creative writing, project planning, and presentations, to visualize the journey from start to finish. - The integration of automation within tools like Obsidian and Excalidraw can significantly streamline workflows, such as creating, organizing, and accessing detailed notes or actions associated with visual elements. - Utilizing templater scripts can improve efficiency by automating repetitive tasks, ensuring seamless updates and consistent formats across different notes and visual elements. # Content Hey everyone! Today I'd like to walk you through my development workflow [* ](https://youtu.be/q8KF3flIyKs?t=0), and I'm going to be creating some automation to improve my Excalidraw workflow. So I'm going to walk you through how I test and design that solution [* ](https://youtu.be/q8KF3flIyKs?t=5). I'm going to be automating the Clothesline Method for myself, and for those of you who are not familiar, I've taken this from Stephen Pressfield. He talks about the Clothesline Method in the context of creative writing [* ](https://youtu.be/q8KF3flIyKs?t=21), and his basic idea is that you hang on the clothesline the beginning and the end of your story. Then, as you think about the storyline and how it evolves, you hang different elements in between. This is just a very nice visual way and also a nice metaphor to think about how you build up your journey from A to B [* ](https://youtu.be/q8KF3flIyKs?t=44). But of course, this approach is not only helpful in creative writing; it is also helpful in many different endeavors [* ](https://youtu.be/q8KF3flIyKs?t=81). It could be project planning, it could be planning a solution, it could be course design, or it can simply be a presentation on a topic—anything where you need to cover the journey from A to B and you need a bit of visual support to think through how you do that. I think the Clothesline Method is great! [* ](https://youtu.be/q8KF3flIyKs?t=111). So the way this clothesline works for me today is that I go ahead and copy an existing card [* ](https://youtu.be/q8KF3flIyKs?t=114). I do this by holding down the Alt key and clicking and dragging the item, and with that, I create a copy. Then I modify the text. This is a new card, like this—maybe I don’t need this additional line here, so I've added this [* ](https://youtu.be/q8KF3flIyKs?t=136). I can also go ahead and change the color if I want the color of the clip, so I can make this whatever color I want [* ](https://youtu.be/q8KF3flIyKs?t=149). Then I can go ahead and hang it wherever this card belongs. Overall, I think this is not a very complicated process; it takes a couple of clicks [* ](https://youtu.be/q8KF3flIyKs?t=164). I can also add some graphics to it, and again, I can use my existing stencil library or I can draw. Well, now I'm just going to choose this roadblock sign [* ](https://youtu.be/q8KF3flIyKs?t=177), whatever that means in this context. Once I have my small icon or drawing on my card, I can group it using Ctrl + G, but you can also do this from the context menu by right-clicking. The default in Obsidian for Ctrl + G is the graph view, so I went ahead and changed that default to Alt + G, and then the graph doesn't pop up when I'm using Excalidraw and I'm doing some grouping [* ](https://youtu.be/q8KF3flIyKs?t=200). Now, what would be nice, however, is if I could add some detail to this card—for example, by adding actions or detailed descriptions. These cards are quite small, so what I was thinking is I can create a new note [* ](https://youtu.be/q8KF3flIyKs?t=247). I'm going to open my closed line here and my untitled here. This I'm just going to call card details for the time being [* ](https://youtu.be/q8KF3flIyKs?t=258). In this note, I'm going to create a section for each card, like, "Introducing Sketchnoting" [* ](https://youtu.be/q8KF3flIyKs?t=269). I don’t need to be an artist; maybe I’m going to create these two sections [* ](https://youtu.be/q8KF3flIyKs?t=286), and then I can add whatever detail I want. It can be multiple paragraphs; it can be as long as I want it to be [* ](https://youtu.be/q8KF3flIyKs?t=307). I can even add some to-dos [* ](https://youtu.be/q8KF3flIyKs?t=316), and let me just add those to-dos. Let's say this is to-do one and this is to-do two [* ](https://youtu.be/q8KF3flIyKs?t=324); you get the idea. Then I can do, of course, these details for the rest as well, right? So I can have this supporting document [* ](https://youtu.be/q8KF3flIyKs?t=342). I have my drawing here and my supporting document here [* ](https://youtu.be/q8KF3flIyKs?t=347). Then what I can do is I can actually add a link to this [* ](https://youtu.be/q8KF3flIyKs?t=350). I'm going to select the text here, where am I? [* ](https://youtu.be/q8KF3flIyKs?t=356) Oops, I'm going to add this link here, and this is card details hash introducing sketchnoting [* ](https://youtu.be/q8KF3flIyKs?t=384). I need to clean this up a bit—uh, card detail tails hash introducing sketchnoting like this [* ](https://youtu.be/q8KF3flIyKs?t=389). If I now switch this to preview mode, then this becomes a link, and if I hover on this link, then you can see that the card details pop up [* ](https://youtu.be/q8KF3flIyKs?t=397). I can do this also for the next one [* ](https://youtu.be/q8KF3flIyKs?t=410), so let me do it like this; let me just show you how that would look like [* ](https://youtu.be/q8KF3flIyKs?t=414). So I can say card details hash I don’t need to be an artist, and yes, I'm going to put that here [* ](https://youtu.be/q8KF3flIyKs?t=420). If I hover over this, then I can see the details for that. I can even take the action, and you can see that the action gets ticked off [* ](https://youtu.be/q8KF3flIyKs?t=436). So this is actually, I think, quite nice [* ](https://youtu.be/q8KF3flIyKs?t=442). I can also do a couple of things [* ](https://youtu.be/q8KF3flIyKs?t=447). I can go ahead and maybe do the following because I want to [* ](https://youtu.be/q8KF3flIyKs?t=450). I want to remove the pin and add an alias, so let's just see [* ](https://youtu.be/q8KF3flIyKs?t=472). In terms of the alias, I was thinking to use quotation marks, so I looked up the Unicode quotation mark [* ](https://youtu.be/q8KF3flIyKs?t=488). I think this is going to be a nice character to use. Let me get back here, and what I'm going to do is [* ](https://youtu.be/q8KF3flIyKs?t=496) here. I'm going to add the pipe character, so that's the vertical line, and paste my alias [* ](https://youtu.be/q8KF3flIyKs?t=507). Then this already is much shorter [* ](https://youtu.be/q8KF3flIyKs?t=512), but I need to do one more thing: I need to get rid of that pin, so I will switch to markdown view [* ](https://youtu.be/q8KF3flIyKs?t=517) and type an additional key here, and that's the Excalidraw link prefix, and that should be just empty [* ](https://youtu.be/q8KF3flIyKs?t=536). If I do this and I come back here, then you can see that the link prefix is gone [* ](https://youtu.be/q8KF3flIyKs?t=539), and if I hover over this, then I can actually see the details. So I can take this item right here and actually group these two together [* ](https://youtu.be/q8KF3flIyKs?t=555). I’m going to Control + Group that, and now I have a card [* ](https://youtu.be/q8KF3flIyKs?t=561) that I can look at the card details just simply by using the Control key and hovering over that [* ](https://youtu.be/q8KF3flIyKs?t=570). Of course, I can do the same with this one as well [* ](https://youtu.be/q8KF3flIyKs?t=576), and it is actually, I think, an almost reasonable workflow [* ](https://youtu.be/q8KF3flIyKs?t=582). Now, I think it is not really efficient [* ](https://youtu.be/q8KF3flIyKs?t=587) so I think you would agree with me that at this time the way this works is a bit cumbersome. Of course, I can have my link and if I go ahead and Alt + copy this [* ](https://youtu.be/q8KF3flIyKs?t=604), and come in here and edit, I can rewrite it [* ](https://youtu.be/q8KF3flIyKs?t=610). I can add stuff here, but I think it is still a bit cumbersome to make this happen [* ](https://youtu.be/q8KF3flIyKs?t=618). So what I'm thinking is the following: if I copy one of these elements, let me take this card and I'm going to create a copy of it using Control + C [* ](https://youtu.be/q8KF3flIyKs?t=626). Let me open up a text editor and paste this in [* ](https://youtu.be/q8KF3flIyKs?t=638). So this is how the copied element looks like; actually, if I would come in here [* ](https://youtu.be/q8KF3flIyKs?t=645), let me show you. I’m going to introduce the text, so here you go. Here’s my "Introducing Sketchnoting" line [* ](https://youtu.be/q8KF3flIyKs?t=669). Now notice that there's this backslash N, which means it’s a new line! But I can go ahead and say, whatever [* ](https://youtu.be/q8KF3flIyKs?t=680), I’m going to change "introducing" to "whatever," and I’m going to copy this text and then press Control + V in Excalidraw [* ](https://youtu.be/q8KF3flIyKs?t=696). You can see that actually what was pasted is "whatever Sketchnoting," so this actually works quite nice [* ](https://youtu.be/q8KF3flIyKs?t=705), but it is not yet perfect. So let me show you why it's not yet perfect [* ](https://youtu.be/q8KF3flIyKs?t=714). I’m going to add a third line for the sake of demonstration, and this is "next line." That’s going to be the name of that great [* ](https://youtu.be/q8KF3flIyKs?t=726). I'm going to not save this but I'm going to copy this and paste it here [* ](https://youtu.be/q8KF3flIyKs?t=738). What you can see is these lines are now a bit crowded, so if I come here and double-click on this [* ](https://youtu.be/q8KF3flIyKs?t=745), and edit it, then you can see that the correct sizing was achieved, so when I changed the text, then the size of the text box needs to be changed as well [* ](https://youtu.be/q8KF3flIyKs?t=761). So we will need to do something about that as one example [* ](https://youtu.be/q8KF3flIyKs?t=774). Also, of course, I need to look for the link, and the link is going to be somewhere... card details [* ](https://youtu.be/q8KF3flIyKs?t=782). Come on, where is the link? [* ](https://youtu.be/q8KF3flIyKs?t=804). What was the name of my file? Card details? Yes. Why am I not... oh, yes, I'm not seeing the card details because I actually need to copy-paste this element not in preview mode [* ](https://youtu.be/q8KF3flIyKs?t=812) but need to... So right now [* ](https://youtu.be/q8KF3flIyKs?t=821), I actually don't see the text in preview mode, but the Excalidraw element only includes this Unicode quotation mark. So if I come here and search for this Unicode mark, I should find its right here [* ](https://youtu.be/q8KF3flIyKs?t=839), but this is not the text I really need. In fact, I need the link text [* ](https://youtu.be/q8KF3flIyKs?t=845), so what I'm going to do is I'm going to change to raw mode, which of course looks ugly like this [* ](https://youtu.be/q8KF3flIyKs?t=856). I'm going to copy this object with the entire link, and if I go back to preview mode, then, of course, that is going to be still that small link in the corner. [* ](https://youtu.be/q8KF3flIyKs?t=874). I'm just going to delete that; we don’t need it [* ](https://youtu.be/q8KF3flIyKs?t=878). I come back here, I delete this, and paste my new item, and you can see here the card details introducing sketchnoting. So if I want, I can, for example, change this to, "Don’t need to be an artist," [* ](https://youtu.be/q8KF3flIyKs?t=897), and then it is going to change my link. I showed you previously what I can do with changing introducing sketchnoting, so I can change those as well [* ](https://youtu.be/q8KF3flIyKs?t=912). If I copy and come back here and paste [* ](https://youtu.be/q8KF3flIyKs?t=917), then I may need to change from raw mode back and forth, but now the link actually works, so that's what we want to achieve [* ](https://youtu.be/q8KF3flIyKs?t=934). Now we know how to modify this text file, so what I want to do is I want to create a templater script that will do the following when I activate the title [* ](https://youtu.be/q8KF3flIyKs?t=939). So the heading line, I want a shortcut that goes ahead and takes the heading text and then does this editing for me. It will replace this text item and will also update the link here as well [* ](https://youtu.be/q8KF3flIyKs?t=992) and place it on the clipboard. My idea is the workflow I'm going to be doing is when I want to add a new element to the drawing on the right-hand side, I'm first going to create my new card, and I may even add some details if I want [* ](https://youtu.be/q8KF3flIyKs?t=1015). Whatever, I'm not going to leave that here, but I'm going to press my shortcut and come over here and paste it, and my expectation is that this will then speed up my process [* ](https://youtu.be/q8KF3flIyKs?t=1035) because this will paste a card with this text on it and with the link in the bottom right [* ](https://youtu.be/q8KF3flIyKs?t=1041). So that's the idea, and maybe we can already go ahead and just create one more document here, so this is going to be my new note, and this is going to be my clothesline script [* ](https://youtu.be/q8KF3flIyKs?t=1057). Let me think this is the format, right? I always forget the characters to use. Let me just see; yes, that is indeed the right format [* ](https://youtu.be/q8KF3flIyKs?t=1084). Okay, so let me take a look [* ](https://youtu.be/q8KF3flIyKs?t=1091). I'm afraid that my templater term might be out of date or may not even be updated in my test environment [* ](https://youtu.be/q8KF3flIyKs?t=1106). So in the templater was off [* ](https://youtu.be/q8KF3flIyKs?t=1110); that's why the text didn't—you see—because when templater is on, I should see a syntax-highlighted text in this case [* ](https://youtu.be/q8KF3flIyKs?t=1115). I did not, so this is where we want our code to go, and let me just do this. I will want to add stuff to the clipboard [* ](https://youtu.be/q8KF3flIyKs?t=1137). What I wanted to do here is, so this is my const result equals, and for the time being, I'm just going to paste here this long text that we have [* ](https://youtu.be/q8KF3flIyKs?t=1155). What I want to do is I want to add a couple of items up here, so this is just to prepare our code. I think I want a const card title equals, and we will work on that [* ](https://youtu.be/q8KF3flIyKs?t=1176). I also want a const [* ](https://youtu.be/q8KF3flIyKs?t=1189), so what I will want is a width [* ](https://youtu.be/q8KF3flIyKs?t=1194). You will see how we will do it. Const height, and I also need a const baseline [* ](https://youtu.be/q8KF3flIyKs?t=1205). I’ll explain in a second why these are important [* ](https://youtu.be/q8KF3flIyKs?t=1211). I actually think that’s all the constants I need, and then what I will want to do is [* ](https://youtu.be/q8KF3flIyKs?t=1219). No, I will need a card title, and I need a const card title wrapped [* ](https://youtu.be/q8KF3flIyKs?t=1230). We are going to be replacing all of these declarations with numbers. For the time being, I’m just creating some placeholders [* ](https://youtu.be/q8KF3flIyKs?t=1244) because I'm going to use the card title, which is the section heading, to edit my link right here at the bottom [* ](https://youtu.be/q8KF3flIyKs?t=1255). So I'm going to take this text, delete it, and I'm going to add a dollar curly brackets value. So what this does is, this will replace the dollar curly brackets card's value with the actual value of the variable [* ](https://youtu.be/q8KF3flIyKs?t=1284). I think we need one more, and that is going to be the const card detail file or let's just call it file name [* ](https://youtu.be/q8KF3flIyKs?t=1306). Right, so we are going to pick the file name up from templater as well, but so this is what we do here [* ](https://youtu.be/q8KF3flIyKs?t=1311). Let me just go ahead and type these details in, and then we'll continue from there [* ](https://youtu.be/q8KF3flIyKs?t=1357). Okay, so one more thing I did here is I changed the font size, and I'm going to change this font size to 10 [* ](https://youtu.be/q8KF3flIyKs?t=1363). It is not really that necessary, but it will be easier to work with a whole number instead of that 10 point something [* ](https://youtu.be/q8KF3flIyKs?t=1374). For that reason, I'm actually going to change the font size here as well, so this is the font size of my link. I'm going to change this to 10 as well [* ](https://youtu.be/q8KF3flIyKs?t=1391). I think that is okay! So what I did is I created these constants, and I actually added them in the text. It takes a bit of looking around to know that you're adding it to the right object [* ](https://youtu.be/q8KF3flIyKs?t=1406). Maybe I can show you this here a bit better so you can see that this object or element that is the text element, the "Introducing Sketchnoting" element, is a couple of lines long from here to here, and it takes a bit of time to find the stuff here [* ](https://youtu.be/q8KF3flIyKs?t=1423). But here's my font size within that, and then here’s my width, my height is somewhere, etc. So you can see here's my width, my height, and my baseline [* ](https://youtu.be/q8KF3flIyKs?t=1460)—these are the three variables width, height, and baseline that Excalidraw uses to set the right box size. So let me just look for the templater help [* ](https://youtu.be/q8KF3flIyKs?t=1476). So this is going to be the Obsidian templater clipboard function base current clipboard [* ](https://youtu.be/q8KF3flIyKs?t=1484). Found it! Here’s my text [* ](https://youtu.be/q8KF3flIyKs?t=1505). This is navigator clipboard write text, and I'm just going to place my variable here result like this. And for the time being, let’s just say instead of... let’s just make this 50 50 and 20 just so it's not [* ](https://youtu.be/q8KF3flIyKs?t=1522). And card title test title, and this is going to be test title, and this is, I think, the actual file name. I can get pretty quick like this [* ](https://youtu.be/q8KF3flIyKs?t=1551). Hopefully, what this will result in... so let's just execute this script now. What I've done here is I added some mock-up values [* ](https://youtu.be/q8KF3flIyKs?t=1560), and I went ahead and added this line to write the material to the clipboard. If I execute this, then I get an error: templater parsing error. Result is not defined on the heck... [* ](https://youtu.be/q8KF3flIyKs?t=1583). Okay, spelling mistake! [* ](https://youtu.be/q8KF3flIyKs?t=1596). Fantastic! Now this is on the clipboard [* ](https://youtu.be/q8KF3flIyKs?t=1600), and if I come here and open my drawing [* ](https://youtu.be/q8KF3flIyKs?t=1607), let me just see what happens if I click paste [* ](https://youtu.be/q8KF3flIyKs?t=1611). This is not yet as good as I would want it to be. Okay, so after a long and hard look at my code, I found where the issue is [* ](https://youtu.be/q8KF3flIyKs?t=1661), and this is the issue—a stupid error on my part. This was actually a new line character, which broke the JSON output! [* ](https://youtu.be/q8KF3flIyKs?t=1671). I need to escape this because I actually want a backslash N in the text, and that was the issue [* ](https://youtu.be/q8KF3flIyKs?t=1686). If I just have backslash and then the card title wrapped constant was test new line title [* ](https://youtu.be/q8KF3flIyKs?t=1704). So I need to change it to backslash backslash and so let me just make it bigger like this. So now if I run my script [* ](https://youtu.be/q8KF3flIyKs?t=1711)—clothesline script [* ](https://youtu.be/q8KF3flIyKs?t=1721)—and I paste it here, then indeed I get this almost good-looking solution [* ](https://youtu.be/q8KF3flIyKs?t=1725). Of course, the sizing of the text is not good [* ](https://youtu.be/q8KF3flIyKs?t=1731), but if I look at it in preview mode, then I already have the right text here [* ](https://youtu.be/q8KF3flIyKs?t=1743). Indeed, it cannot find the test title section in the page because it simply does not exist [* ](https://youtu.be/q8KF3flIyKs?t=1750). So that is also an issue, and now let's see what can we do about the text element [* ](https://youtu.be/q8KF3flIyKs?t=1759). And for that, let's look at the Excalidraw automate and let's just experiment a little with Excalidraw automate [* ](https://youtu.be/q8KF3flIyKs?t=1770). Let me just find the right window here [* ](https://youtu.be/q8KF3flIyKs?t=1781). We are going to look at Excalidraw automate, and you can go online and find Excalidraw automate help. I'll put this link in the description of the video, so you can find it [* ](https://youtu.be/q8KF3flIyKs?t=1795). We have a whole bunch of good functions here, and we're going to be actually looking at the add text function [* ](https://youtu.be/q8KF3flIyKs?t=1809) and the wrap text function for our purposes [* ](https://youtu.be/q8KF3flIyKs?t=1813). If I look at add text, here we go—adding objects. So if I come here and look for add text [* ](https://youtu.be/q8KF3flIyKs?t=1825), then this is how the add text looks like. I need to provide all-in-all three numbers; add text is going to use the basic object format [* ](https://youtu.be/q8KF3flIyKs?t=1836). So if I come back here, I'm looking at the element style [* ](https://youtu.be/q8KF3flIyKs?t=1850). Then the element style has a font size property, so I will need to set the font size property [* ](https://youtu.be/q8KF3flIyKs?t=1862), but let's start to experiment here. First of all, I'm going to say that EA equals Excalidraw automate [* ](https://youtu.be/q8KF3flIyKs?t=1871). Then I want to reset EA. That’s always how you start any script that cleans everything that was previously set [* ](https://youtu.be/q8KF3flIyKs?t=1878). Then I want to set the style font style [* ](https://youtu.be/q8KF3flIyKs?t=1891). Font size actually to 10, and then I want to call the add text command [* ](https://youtu.be/q8KF3flIyKs?t=1900). Now I’m just adding a simple or single task, text element constant. ID equals max, so I'm capturing the ID [* ](https://youtu.be/q8KF3flIyKs?t=2034), and indeed maybe 10 characters was a bit too short because this is one, two, three, four, five, six, seven, eight, nine, ten, eleven. So let's say twelve characters is going to be our length [* ](https://youtu.be/q8KF3flIyKs?t=2050) we can experiment with this. Maybe this can even be fourteen characters long [* ](https://youtu.be/q8KF3flIyKs?t=2055), and then I'm using this dictionary item. So I'm going to search for my const element; it's going to be [* ](https://youtu.be/q8KF3flIyKs?t=2071). I don’t need the E here; that's going to be [* ](https://youtu.be/q8KF3flIyKs?t=2075). So then they are pretty good; what I'm going to do is I still need to grab the title, so we still have a task to do to capture the heading title [* ](https://youtu.be/q8KF3flIyKs?t=2086). So that’s still to be done, but other than that, this is almost good now. I'm just going to call this the test title multi-line [* ](https://youtu.be/q8KF3flIyKs?t=2204) just for the sake of our experiment, and then I'm going to open up card details there and our clothesline [* ](https://youtu.be/q8KF3flIyKs?t=2222). I'm going to reshuffle these things a bit [* ](https://youtu.be/q8KF3flIyKs?t=2228) like this; like this, and so there’s my clothesline. If I call my script and paste it here, then [* ](https://youtu.be/q8KF3flIyKs?t=2240) [* ](https://youtu.be/q8KF3flIyKs?t=2244). What happened here? Card title, something. Oh, because I actually included it as text, not as a variable [* ](https://youtu.be/q8KF3flIyKs?t=2256), so let's just try it again [* ](https://youtu.be/q8KF3flIyKs?t=2271), and then we again have a problem, and that is because the text wrap function adds new line characters instead of typing a new line in there [* ](https://youtu.be/q8KF3flIyKs?t=2280). So, okay, the wrap text is a good function, but it does not exactly work. I’m going to add a replace there, so how does that work? [* ](https://youtu.be/q8KF3flIyKs?t=2311). Let's just test this, so this is my string, and here I want to replace all slash N [* ](https://youtu.be/q8KF3flIyKs?t=2323). I did slash slash N like this. Excellent! This is what I want, so I want to add this to the end of my script here [* ](https://youtu.be/q8KF3flIyKs?t=2348) like that. I'm going to reduce the font size again just so everything fits, so let's try again [* ](https://youtu.be/q8KF3flIyKs?t=2355). Clothesline script [* ](https://youtu.be/q8KF3flIyKs?t=2362), and yay! It's almost good; it's not perfect, but is it not perfect? No, it's actually surprisingly good [* ](https://youtu.be/q8KF3flIyKs?t=2371). So that's our test title multi-line, and there's our box; we can play around with the positioning of the items, that could be done. For the time being, I think I'm going to be happy with this and move on with the last part of this exercise that is to get the current line in my script. So let me just do a bit of investigation of how that actually happens [* ](https://youtu.be/q8KF3flIyKs?t=2399). So I found the part of the script I was looking for [* ](https://youtu.be/q8KF3flIyKs?t=2414), and that is right here. So I get the active editor with this line; then I get the cursor, and then I get my active line. From the active line, I want the card title [* ](https://youtu.be/q8KF3flIyKs?t=2428) already, and the card title. So this line I expect to be on the line of the header. So this line will look like something—it may have multiple hashtags, a space, and then the title [* ](https://youtu.be/q8KF3flIyKs?t=2440)—whatever; multiple characters [* ](https://youtu.be/q8KF3flIyKs?t=2459), and I'm going to use a regular expression to extract that text [* ](https://youtu.be/q8KF3flIyKs?t=2461), and I like to use this website, regexr.com. This is an excellent place to experiment [* ](https://youtu.be/q8KF3flIyKs?t=2474) with these items. So I'm expecting that I'm going to have actually one or more plus signs, and then I expect to see one or more whitespace characters [* ](https://youtu.be/q8KF3flIyKs?t=2493)—that's the backslash S is a whitespace—and then I actually want to get everything in the line [* ](https://youtu.be/q8KF3flIyKs?t=2505), and this one I want to place in a capture group [* ](https://youtu.be/q8KF3flIyKs?t=2513) so this is going to capture me the title text, as you can see. So this is the regular expression I want [* ](https://youtu.be/q8KF3flIyKs?t=2526), and if I come back here, I want to match this, and then the question is, how does a match work? I never remember these things, frankly [* ](https://youtu.be/q8KF3flIyKs?t=2542). So we are going to now experiment with this in the console log. So let’s just create—so this is going to be my title row string [* ](https://youtu.be/q8KF3flIyKs?t=2566). Then I want to match this, and it says that something is not... oh, because I have two dots here [* ](https://youtu.be/q8KF3flIyKs?t=2581). Excellent! Then if I match this and I take the first element of the list, then that is the value I'm after [* ](https://youtu.be/q8KF3flIyKs?t=2590). Of course, you can add all sorts of error handling to the code if you want, but for the time being, I'm going to assume that people use the code correctly [* ](https://youtu.be/q8KF3flIyKs?t=2604). Now, if I come here and say this is a new card [* ](https://youtu.be/q8KF3flIyKs?t=2615), then I’ll have this row active. I’ll press Alt + E and start my clothesline script [* ](https://youtu.be/q8KF3flIyKs?t=2624), and then I come to Excalidraw, and I change to raw mode [* ](https://youtu.be/q8KF3flIyKs?t=2632). I paste, "This is my new card," and if I change back from raw mode, then I actually should have this link which takes me to my new card, and there’s the text [* ](https://youtu.be/q8KF3flIyKs?t=2647), "My new card," which is exactly what I wanted. We can also try it—we don’t need to be an artist; that is a longer text! I click clothesline script [* ](https://youtu.be/q8KF3flIyKs?t=2656), and it’s actually copied. I'll need to do something that I don't want these empty lines to be inserted after I press that [* ](https://youtu.be/q8KF3flIyKs?t=2664). So we’ll work that out in a second [* ](https://youtu.be/q8KF3flIyKs?t=2670), and I come here, paste, and then change to change back and forth between raw mode and normal mode, and I actually have my text neatly here now [* ](https://youtu.be/q8KF3flIyKs?t=2682). I think this is actually almost perfect [* ](https://youtu.be/q8KF3flIyKs?t=2686); you see that the text is right there [* ](https://youtu.be/q8KF3flIyKs?t=2695). For sure, I can move this around; there are a couple of nice cities missing. So first of all, I don't want this empty line, but this is why the empty line appeared. You see, I had two empty rows after my script, and that created the line [* ](https://youtu.be/q8KF3flIyKs?t=2708). So if I run my script now [* ](https://youtu.be/q8KF3flIyKs?t=2716), then there is no empty line added, so that’s solved [* ](https://youtu.be/q8KF3flIyKs?t=2720). It would be great if I got a random color, so let's just add that piece to our script [* ](https://youtu.be/q8KF3flIyKs?t=2725). My approach to the random color is going to be one of [* ](https://youtu.be/q8KF3flIyKs?t=2730) simply creating a list of colors from right here from the background colors [* ](https://youtu.be/q8KF3flIyKs?t=2744). I'm just creating an empty object here, and so I'm going to create a list here, and I'm going to call this const colors, and this is going to be a list [* ](https://youtu.be/q8KF3flIyKs?t=2756). I'm just going to place some of the colors here, and what I’ll do is I'm just going to choose one of those colors by random [* ](https://youtu.be/q8KF3flIyKs?t=2765). So I can go and choose some of these nice colors, and then my clip will be of a random color [* ](https://youtu.be/q8KF3flIyKs?t=2791). So I did the editing; what I did is I found the color here and replaced it with my clip color variable [* ](https://youtu.be/q8KF3flIyKs?t=2804) like that. I created this area of colors, which I just simply went through the different colors in Excalidraw that I like, and I created this area of different colors [* ](https://youtu.be/q8KF3flIyKs?t=2819), and then I use this function: math random gives me a random number between 0 and 1. I multiply it by the number of colors, and I take the floor, so the lower value of that [* ](https://youtu.be/q8KF3flIyKs?t=2835), because the numbering of the area starts with 0. So element 1 is addressed with color 0, and actually this is not yet good because I need to say colors and choose an element from this area [* ](https://youtu.be/q8KF3flIyKs?t=2858) like this. Here's my clip color; let's see if this now works [* ](https://youtu.be/q8KF3flIyKs?t=2863). I'm going to delete that from right there, and let's just again run our script [* ](https://youtu.be/q8KF3flIyKs?t=2870), and I'm changing to raw mode. I'm pasting this, and I'm going back to preview mode. Oops, and I have my nice random clip color! We can try again. I’m going to run my script [* ](https://youtu.be/q8KF3flIyKs?t=2898) and come back here [* ](https://youtu.be/q8KF3flIyKs?t=2901), and pasting this, and then you see, oops, it’s always selected—here’s my new clip color [* ](https://youtu.be/q8KF3flIyKs?t=2914). So I think this is good as a demonstration. As I said, there can still be work to do to position the text, but I'm already happy with this [* ](https://youtu.be/q8KF3flIyKs?t=2929). Frankly, if I need to do this with some of the text, I can live with that [* ](https://youtu.be/q8KF3flIyKs?t=2935), but this is also following the same logic. This can be corrected. Finally, I just want to go here and implement the hotkey for the templates plugin. Let me install the hotkey for templates; that’s great. Let me enable it [* ](https://youtu.be/q8KF3flIyKs?t=2959), and then let me go to settings [* ](https://youtu.be/q8KF3flIyKs?t=2967). What I want to do is I want to add a shortcut key to my new template [* ](https://youtu.be/q8KF3flIyKs?t=2970). Hotkey for templates; I'm going to look for my clothesline script, and here I can add my hotkey which is going to be, I don't know, Control + Alt + C [* ](https://youtu.be/q8KF3flIyKs?t=3002)—that’s going to be my shortcut for a new card [* ](https://youtu.be/q8KF3flIyKs?t=3012). If I come up here, introducing sketchnoting, I'm on the active line; I press Control + Alt + C [* ](https://youtu.be/q8KF3flIyKs?t=3019). I come here and go ahead and paste [* ](https://youtu.be/q8KF3flIyKs?t=3028), and with that, I need to get used to clicking the right place. I have inserted my card [* ](https://youtu.be/q8KF3flIyKs?t=3042). I wonder what happens if I paste like this; then I need to double-click up here to get it properly positioned [* ](https://youtu.be/q8KF3flIyKs?t=3048). That’s still a bit of a drag, but I think overall I was able to improve the speed of my workflow significantly [* ](https://youtu.be/q8KF3flIyKs?t=3064). So now I can close my script; I no longer need it [* ](https://youtu.be/q8KF3flIyKs?t=3070). I can move my drawing to the right-hand side [* ](https://youtu.be/q8KF3flIyKs?t=3076), and then I can work on my cards here. Whenever a new card occurs to me—this is a brand-new card—and here is the description [* ](https://youtu.be/q8KF3flIyKs?t=3094) something like that. I stand on the heading line; I press Control + Alt + C [* ](https://youtu.be/q8KF3flIyKs?t=3103). I come here and paste, and I switch between the two views, and then I actually have my new card here [* ](https://youtu.be/q8KF3flIyKs?t=3112). By the way, I have a shortcut for this. I need to go to my hotkeys, look for Excalidraw, and I should have a shortcut here to toggle between Excalidraw and markdown—no, that’s not the lock/unlock; Control + Shift + E [* ](https://youtu.be/q8KF3flIyKs?t=3129). So then I’m here. If I press Control + Shift + E, then that switches between the two modes [* ](https://youtu.be/q8KF3flIyKs?t=3146). So that’s actually quite handy because I can paste my new card, and if I want to transform this into a nicely rendered format, I press Control + Shift + E twice [* ](https://youtu.be/q8KF3flIyKs?t=3166). With that, I have my next card inserted [* ](https://youtu.be/q8KF3flIyKs?t=3173). Again, I think the process is much better than it was before [* ](https://youtu.be/q8KF3flIyKs?t=3177). Yes, it is not yet fully perfect, but I think overall this text positioning can be done in a couple of minutes, looking into how it works, and that is going to make this complete [* ](https://youtu.be/q8KF3flIyKs?t=3188). I did the additional editing; the end result looks like this. If I copy and paste my element here and just do this cycle of preview and raw and preview [* ](https://youtu.be/q8KF3flIyKs?t=3218), then you can see that now the text is placed well as well as the link is neatly in the bottom right corner [* ](https://youtu.be/q8KF3flIyKs?t=3232). What I did is I did a couple of things to clean up the text, so I did some minor tweaks. I actually set the start for Excalidraw automate—it will be center-aligned [* ](https://youtu.be/q8KF3flIyKs?t=3245). I selected font family one—Away, font family one is the default, so this is not so important [* ](https://youtu.be/q8KF3flIyKs?t=3257). I did a change here; remember we had the match or replace all elements here. That moved down to the script right here [* ](https://youtu.be/q8KF3flIyKs?t=3270), and what I did is I actually recognized that when I was adding text, I was adding the wrong text, and that impacted the sizing of the text [* ](https://youtu.be/q8KF3flIyKs?t=3289) because I was adding not the multi-line text but already the escaped text that you can find here. So anyway, this resolved this now. When I’m calling add text, I'm sending it the proper multi-line text [* ](https://youtu.be/q8KF3flIyKs?t=3309). I also went ahead and cleaned up a bit the sizing of the element; that's a bit of a tedious job. There are two rectangles here. You can see this is rectangle one, and then further down here is rectangle two [* ](https://youtu.be/q8KF3flIyKs?t=3330). Rectangle one is the big rectangle; rectangle two is the rectangle for the clip, and what I did is I went ahead and just cleaned up these numbers. So this was 66.45 something, and this was 470 something as well. This was 70, so I actually rounded these numbers—the width, the height, the X and Y coordinates of the main rectangle [* ](https://youtu.be/q8KF3flIyKs?t=3359). I did the same with the second rectangle, making sure that the proper bit—so the width of this is now the same as the bit of the other, so just to make sure that I have a proper line at the top of the clip [* ](https://youtu.be/q8KF3flIyKs?t=3374). I also went ahead and just played with the positioning of my link here [* ](https://youtu.be/q8KF3flIyKs?t=3392). So this quotation mark in the bottom and what I did was just so this was pure playing with numbers. I experimented until I found that 132 and minus 417 placed my link for details in the bottom right corner [* ](https://youtu.be/q8KF3flIyKs?t=3417). You see, previously it was a bit further up [* ](https://youtu.be/q8KF3flIyKs?t=3420). I also added this variable here to position the X-coordinate of the text, so this is our text itself [* ](https://youtu.be/q8KF3flIyKs?t=3434) that we are displaying—the multi-line text—and this I calculate such that I take the X-coordinate of the card and then I take the width of the card, that’s 77. I subtract the width of the text and divide that by two [* ](https://youtu.be/q8KF3flIyKs?t=3459), and that’s how I decide where to place my text. As you could see, the end result was quite nice. It placed the text right where I wanted it, and now this whole setup is, I think, working quite nicely [* ](https://youtu.be/q8KF3flIyKs?t=3476). So I hope you found this interesting, and you got a bit of insight into how Excalidraw automate works, you got a bit of insight into the Clothesline Method as well [* ](https://youtu.be/q8KF3flIyKs?t=3489). Hopefully, altogether this resulted in a script that you can reuse in your own workflow [* ](https://youtu.be/q8KF3flIyKs?t=3501) and will help your visual problem-solving and visual thinking. Thank you! [* ](https://youtu.be/q8KF3flIyKs?t=3511) # YouTube Details ## YouTube Description If you find the plugin and/or my videos helpful, please say thanks by buying me a coffee: https://ko-fi.com/zsolt If you'd like to request a feature or report a bug, please raise it on GitHub: https://github.com/zsviczian/obsidian-excalidraw-plugin If you want to connect, you can reach me (@zsviczian) in the Obsidian Members Group (OMG) on Discord or on Twitter. Link to the code and the clothesline template here: https://github.com/SilentVoid13/Templater/discussions/350 Timestamps: --------------------- [00:00](https://youtu.be/q8KF3flIyKs?t=0) Intro [00:22](https://youtu.be/q8KF3flIyKs?t=22) The Clothesline Method [01:53](https://youtu.be/q8KF3flIyKs?t=113) My current manual workflow [03:50](https://youtu.be/q8KF3flIyKs?t=230) Adding a detailed description to cards [10:24](https://youtu.be/q8KF3flIyKs?t=624) Manipulating Excalidraw Clipboard JSON with Notepad [15:41](https://youtu.be/q8KF3flIyKs?t=941) Introducing the Templater Automation idea [17:27](https://youtu.be/q8KF3flIyKs?t=1047) Creating the Templater Script [25:56](https://youtu.be/q8KF3flIyKs?t=1556) First run [27:45](https://youtu.be/q8KF3flIyKs?t=1665) Found the solution to the paste problem [29:22](https://youtu.be/q8KF3flIyKs?t=1762) Excalidraw Automate [37:16](https://youtu.be/q8KF3flIyKs?t=2236) Second run [40:12](https://youtu.be/q8KF3flIyKs?t=2412) Reading the active heading [43:40](https://youtu.be/q8KF3flIyKs?t=2620) Third run [45:20](https://youtu.be/q8KF3flIyKs?t=2720) Adding random color [47:46](https://youtu.be/q8KF3flIyKs?t=2866) Fourth run [49:05](https://youtu.be/q8KF3flIyKs?t=2945) Setting up a hotkey [52:07](https://youtu.be/q8KF3flIyKs?t=3127) Shortcut to switch between RAW and PREVIEW mode [53:27](https://youtu.be/q8KF3flIyKs?t=3207) Tweak, improved placement of text Links --------- My blog: https://zsolt.blog Obsidian: https://obsidian.md Excalidraw Automate: https://zsviczian.github.io/obsidian-excalidraw-plugin/ Templater plugin: https://github.com/SilentVoid13/Templater Hotkeys for Templates plugin: https://github.com/Vinzent03/obsidian-hotkeys-for-templates Regular Expression Editor: https://regexr.com/ ## YouTube Transcript [hey everyone today i'd like to walk you](https://youtu.be/q8KF3flIyKs?t=0) [through my development workflow](https://youtu.be/q8KF3flIyKs?t=2) [and uh i'm going to be creating some](https://youtu.be/q8KF3flIyKs?t=5) [automation to improve my xcoli draw](https://youtu.be/q8KF3flIyKs?t=9) [workflow](https://youtu.be/q8KF3flIyKs?t=13) [and](https://youtu.be/q8KF3flIyKs?t=14) [so i'm going to walk you through how i](https://youtu.be/q8KF3flIyKs?t=15) [uh test and design that solution um i'm](https://youtu.be/q8KF3flIyKs?t=17) [going to be automating the](https://youtu.be/q8KF3flIyKs?t=21) [clothesline method](https://youtu.be/q8KF3flIyKs?t=24) [for myself and those of you who are not](https://youtu.be/q8KF3flIyKs?t=26) [familiar i've taken this from](https://youtu.be/q8KF3flIyKs?t=28) [stephen pressfield and he talks about](https://youtu.be/q8KF3flIyKs?t=32) [the clothesline method](https://youtu.be/q8KF3flIyKs?t=35) [in the context of](https://youtu.be/q8KF3flIyKs?t=37) [creative writing and his basic idea is](https://youtu.be/q8KF3flIyKs?t=39) [that](https://youtu.be/q8KF3flIyKs?t=44) [you hang on the clothesline the](https://youtu.be/q8KF3flIyKs?t=45) [beginning and the end of your story and](https://youtu.be/q8KF3flIyKs?t=48) [then](https://youtu.be/q8KF3flIyKs?t=51) [as you](https://youtu.be/q8KF3flIyKs?t=52) [think about](https://youtu.be/q8KF3flIyKs?t=53) [the](https://youtu.be/q8KF3flIyKs?t=55) [storyline as it](https://youtu.be/q8KF3flIyKs?t=56) [evolves you hang different elements in](https://youtu.be/q8KF3flIyKs?t=59) [between and this is just a very](https://youtu.be/q8KF3flIyKs?t=63) [nice visual way and also a nice metaphor](https://youtu.be/q8KF3flIyKs?t=66) [to think about how you build up](https://youtu.be/q8KF3flIyKs?t=69) [your your journey from a to b but of](https://youtu.be/q8KF3flIyKs?t=73) [course](https://youtu.be/q8KF3flIyKs?t=77) [this approach is not only helpful](https://youtu.be/q8KF3flIyKs?t=78) [in creative writing this approach](https://youtu.be/q8KF3flIyKs?t=81) [is helpful in many different endeavors](https://youtu.be/q8KF3flIyKs?t=84) [it could be project planning it could be](https://youtu.be/q8KF3flIyKs?t=87) [planning a solution it could be course](https://youtu.be/q8KF3flIyKs?t=90) [design](https://youtu.be/q8KF3flIyKs?t=94) [it can also be just simply a](https://youtu.be/q8KF3flIyKs?t=95) [presentation on a topic](https://youtu.be/q8KF3flIyKs?t=98) [anything where you need to cover the](https://youtu.be/q8KF3flIyKs?t=101) [journey from a to b and you need a bit](https://youtu.be/q8KF3flIyKs?t=102) [of a visual support to think through how](https://youtu.be/q8KF3flIyKs?t=105) [you do that i think the clothesline](https://youtu.be/q8KF3flIyKs?t=109) [method is great so the way](https://youtu.be/q8KF3flIyKs?t=111) [this clothesline works for me today is i](https://youtu.be/q8KF3flIyKs?t=114) [go ahead and copy](https://youtu.be/q8KF3flIyKs?t=118) [an existing](https://youtu.be/q8KF3flIyKs?t=120) [card i do this by holding down the alt](https://youtu.be/q8KF3flIyKs?t=121) [key and click dragging the item and with](https://youtu.be/q8KF3flIyKs?t=124) [that i create a](https://youtu.be/q8KF3flIyKs?t=128) [copy and then](https://youtu.be/q8KF3flIyKs?t=129) [modifying the text so this is a](https://youtu.be/q8KF3flIyKs?t=131) [new](https://youtu.be/q8KF3flIyKs?t=136) [card like this maybe maybe i don't need](https://youtu.be/q8KF3flIyKs?t=137) [this additional line here so i've](https://youtu.be/q8KF3flIyKs?t=140) [i've added this i can also go ahead and](https://youtu.be/q8KF3flIyKs?t=143) [change the color](https://youtu.be/q8KF3flIyKs?t=147) [if i want uh the color of the clip](https://youtu.be/q8KF3flIyKs?t=149) [so i can make this](https://youtu.be/q8KF3flIyKs?t=152) [whatever color i want and then i can go](https://youtu.be/q8KF3flIyKs?t=154) [ahead and hang it wherever this card](https://youtu.be/q8KF3flIyKs?t=157) [belongs and](https://youtu.be/q8KF3flIyKs?t=160) [overall i think this is not](https://youtu.be/q8KF3flIyKs?t=162) [a very um](https://youtu.be/q8KF3flIyKs?t=164) [bad process](https://youtu.be/q8KF3flIyKs?t=167) [it takes a couple of clicks i can also](https://youtu.be/q8KF3flIyKs?t=169) [add](https://youtu.be/q8KF3flIyKs?t=172) [some graphics to it](https://youtu.be/q8KF3flIyKs?t=174) [and](https://youtu.be/q8KF3flIyKs?t=176) [again i can use my existing stencil](https://youtu.be/q8KF3flIyKs?t=177) [library or](https://youtu.be/q8KF3flIyKs?t=180) [i can of course go ahead and draw well](https://youtu.be/q8KF3flIyKs?t=182) [now i'm just going to choose this](https://youtu.be/q8KF3flIyKs?t=184) [uh roadblock sign](https://youtu.be/q8KF3flIyKs?t=187) [whatever](https://youtu.be/q8KF3flIyKs?t=190) [it means in this context](https://youtu.be/q8KF3flIyKs?t=191) [and once i have my small icon or a](https://youtu.be/q8KF3flIyKs?t=194) [drawing on my card i can group it i'm](https://youtu.be/q8KF3flIyKs?t=197) [using ctrl g](https://youtu.be/q8KF3flIyKs?t=200) [but you can also do this from the](https://youtu.be/q8KF3flIyKs?t=203) [context menu by right-clicking](https://youtu.be/q8KF3flIyKs?t=206) [the default in obsidian for control g by](https://youtu.be/q8KF3flIyKs?t=209) [the way](https://youtu.be/q8KF3flIyKs?t=212) [is the graph view so i went ahead and](https://youtu.be/q8KF3flIyKs?t=213) [changed that](https://youtu.be/q8KF3flIyKs?t=216) [default to alt g and then](https://youtu.be/q8KF3flIyKs?t=218) [the graph doesn't pop up when i'm using](https://youtu.be/q8KF3flIyKs?t=222) [x color draw and i'm doing some grouping](https://youtu.be/q8KF3flIyKs?t=225) [now what would be nice however is if i](https://youtu.be/q8KF3flIyKs?t=229) [could](https://youtu.be/q8KF3flIyKs?t=232) [add some detail to this card for example](https://youtu.be/q8KF3flIyKs?t=233) [add some actions or add some detailed](https://youtu.be/q8KF3flIyKs?t=238) [description these cards are quite small](https://youtu.be/q8KF3flIyKs?t=240) [so what i was thinking is i can actually](https://youtu.be/q8KF3flIyKs?t=243) [create a new note](https://youtu.be/q8KF3flIyKs?t=247) [and so i'm going to open my closed line](https://youtu.be/q8KF3flIyKs?t=249) [here and my untitled here and this is](https://youtu.be/q8KF3flIyKs?t=251) [i'm just going to call this for the time](https://youtu.be/q8KF3flIyKs?t=255) [being](https://youtu.be/q8KF3flIyKs?t=257) [card details](https://youtu.be/q8KF3flIyKs?t=258) [and in this note i'm going to create a](https://youtu.be/q8KF3flIyKs?t=261) [section for each card so introduce](https://youtu.be/q8KF3flIyKs?t=265) [[Music]](https://youtu.be/q8KF3flIyKs?t=269) [thing](https://youtu.be/q8KF3flIyKs?t=270) [catch no thing is the first one and](https://youtu.be/q8KF3flIyKs?t=271) [maybe i'm not going to do all of them](https://youtu.be/q8KF3flIyKs?t=274) [but](https://youtu.be/q8KF3flIyKs?t=277) [i'm just going to](https://youtu.be/q8KF3flIyKs?t=278) [don't need to be an](https://youtu.be/q8KF3flIyKs?t=280) [artist maybe i'm going to create these](https://youtu.be/q8KF3flIyKs?t=282) [two](https://youtu.be/q8KF3flIyKs?t=286) [sections and then here](https://youtu.be/q8KF3flIyKs?t=286) [i can](https://youtu.be/q8KF3flIyKs?t=289) [add](https://youtu.be/q8KF3flIyKs?t=290) [whatever](https://youtu.be/q8KF3flIyKs?t=291) [detail i want](https://youtu.be/q8KF3flIyKs?t=293) [it can be](https://youtu.be/q8KF3flIyKs?t=297) [multiple](https://youtu.be/q8KF3flIyKs?t=298) [paragraphs](https://youtu.be/q8KF3flIyKs?t=302) [can be as long as i want it to be](https://youtu.be/q8KF3flIyKs?t=307) [and i can even add](https://youtu.be/q8KF3flIyKs?t=314) [some](https://youtu.be/q8KF3flIyKs?t=316) [to do's](https://youtu.be/q8KF3flIyKs?t=317) [and](https://youtu.be/q8KF3flIyKs?t=318) [let me just add those to do so let's say](https://youtu.be/q8KF3flIyKs?t=320) [this is](https://youtu.be/q8KF3flIyKs?t=324) [to do one and then this is to do two](https://youtu.be/q8KF3flIyKs?t=326) [you get the idea and then i can do of](https://youtu.be/q8KF3flIyKs?t=331) [course this details](https://youtu.be/q8KF3flIyKs?t=334) [details for the](https://youtu.be/q8KF3flIyKs?t=336) [rest as well](https://youtu.be/q8KF3flIyKs?t=339) [right](https://youtu.be/q8KF3flIyKs?t=341) [so i can have this supporting document](https://youtu.be/q8KF3flIyKs?t=342) [so i have my drawing here and i have my](https://youtu.be/q8KF3flIyKs?t=345) [supporting document here](https://youtu.be/q8KF3flIyKs?t=347) [then what i can do](https://youtu.be/q8KF3flIyKs?t=350) [is i can actually](https://youtu.be/q8KF3flIyKs?t=352) [add a link](https://youtu.be/q8KF3flIyKs?t=354) [to this so i'm just going to](https://youtu.be/q8KF3flIyKs?t=356) [select the text here](https://youtu.be/q8KF3flIyKs?t=359) [where am i](https://youtu.be/q8KF3flIyKs?t=362) [and](https://youtu.be/q8KF3flIyKs?t=365) [oops i'm going to add this link here and](https://youtu.be/q8KF3flIyKs?t=367) [this is](https://youtu.be/q8KF3flIyKs?t=370) [card](https://youtu.be/q8KF3flIyKs?t=371) [details](https://youtu.be/q8KF3flIyKs?t=373) [hash](https://youtu.be/q8KF3flIyKs?t=375) [i](https://youtu.be/q8KF3flIyKs?t=377) [need to clean this up a bit](https://youtu.be/q8KF3flIyKs?t=378) [uh car detail](https://youtu.be/q8KF3flIyKs?t=382) [tails hash introducing sketchnoting](https://youtu.be/q8KF3flIyKs?t=384) [like this](https://youtu.be/q8KF3flIyKs?t=387) [and if i now switch this to](https://youtu.be/q8KF3flIyKs?t=389) [preview mode then this becomes](https://youtu.be/q8KF3flIyKs?t=392) [a link](https://youtu.be/q8KF3flIyKs?t=397) [and if i hover on this link](https://youtu.be/q8KF3flIyKs?t=398) [then you can see that](https://youtu.be/q8KF3flIyKs?t=401) [the](https://youtu.be/q8KF3flIyKs?t=403) [card details](https://youtu.be/q8KF3flIyKs?t=404) [pop up](https://youtu.be/q8KF3flIyKs?t=406) [i can do this also for](https://youtu.be/q8KF3flIyKs?t=407) [the next one](https://youtu.be/q8KF3flIyKs?t=410) [so let me do it like this let me just](https://youtu.be/q8KF3flIyKs?t=411) [show you how that would look like](https://youtu.be/q8KF3flIyKs?t=414) [so i can say](https://youtu.be/q8KF3flIyKs?t=416) [card details](https://youtu.be/q8KF3flIyKs?t=417) [hash i don't need to be an artist and](https://youtu.be/q8KF3flIyKs?t=420) [yes i'm going to put that here](https://youtu.be/q8KF3flIyKs?t=425) [and so then if i hover on this then i](https://youtu.be/q8KF3flIyKs?t=428) [can see the details for that i can even](https://youtu.be/q8KF3flIyKs?t=431) [so here i can even take the action and](https://youtu.be/q8KF3flIyKs?t=434) [you can see that the action](https://youtu.be/q8KF3flIyKs?t=436) [gets ticked off so so this is actually i](https://youtu.be/q8KF3flIyKs?t=439) [think](https://youtu.be/q8KF3flIyKs?t=442) [um](https://youtu.be/q8KF3flIyKs?t=443) [quite nice](https://youtu.be/q8KF3flIyKs?t=444) [i can also do a couple of things i can](https://youtu.be/q8KF3flIyKs?t=445) [go ahead](https://youtu.be/q8KF3flIyKs?t=447) [and](https://youtu.be/q8KF3flIyKs?t=449) [maybe](https://youtu.be/q8KF3flIyKs?t=450) [do the following](https://youtu.be/q8KF3flIyKs?t=452) [because i i want to](https://youtu.be/q8KF3flIyKs?t=453) [condense this link such that it fits](https://youtu.be/q8KF3flIyKs?t=456) [in the corner](https://youtu.be/q8KF3flIyKs?t=460) [right there so there my idea](https://youtu.be/q8KF3flIyKs?t=461) [is](https://youtu.be/q8KF3flIyKs?t=464) [the following i'm going to](https://youtu.be/q8KF3flIyKs?t=465) [um](https://youtu.be/q8KF3flIyKs?t=468) [remove the pin and add an elias](https://youtu.be/q8KF3flIyKs?t=469) [so let's just see](https://youtu.be/q8KF3flIyKs?t=472) [in terms of the elias i would want to](https://youtu.be/q8KF3flIyKs?t=475) [use](https://youtu.be/q8KF3flIyKs?t=478) [i was](https://youtu.be/q8KF3flIyKs?t=480) [thinking to use quotation marks so](https://youtu.be/q8KF3flIyKs?t=482) [i i looked up the unicode quotation mark](https://youtu.be/q8KF3flIyKs?t=484) [so i i think this is going to be a nice](https://youtu.be/q8KF3flIyKs?t=488) [character to use](https://youtu.be/q8KF3flIyKs?t=491) [and so let me get back here and what i'm](https://youtu.be/q8KF3flIyKs?t=493) [going to do is](https://youtu.be/q8KF3flIyKs?t=496) [here](https://youtu.be/q8KF3flIyKs?t=498) [i'm going to add the pipe character so](https://youtu.be/q8KF3flIyKs?t=499) [that's the vertical line](https://youtu.be/q8KF3flIyKs?t=502) [and paste my](https://youtu.be/q8KF3flIyKs?t=504) [alias](https://youtu.be/q8KF3flIyKs?t=507) [and then this already is much shorter so](https://youtu.be/q8KF3flIyKs?t=508) [it almost fits you can see](https://youtu.be/q8KF3flIyKs?t=512) [but](https://youtu.be/q8KF3flIyKs?t=515) [i need to do one more thing i need to](https://youtu.be/q8KF3flIyKs?t=516) [get rid of that pin so i will](https://youtu.be/q8KF3flIyKs?t=517) [switch to markdown view](https://youtu.be/q8KF3flIyKs?t=520) [and i'm going to just type](https://youtu.be/q8KF3flIyKs?t=523) [an additional key here and that's the x](https://youtu.be/q8KF3flIyKs?t=525) [call it raw](https://youtu.be/q8KF3flIyKs?t=528) [link](https://youtu.be/q8KF3flIyKs?t=530) [prefix and that should be just empty](https://youtu.be/q8KF3flIyKs?t=532) [and if i do this](https://youtu.be/q8KF3flIyKs?t=536) [and i come back](https://youtu.be/q8KF3flIyKs?t=539) [here then you can see that](https://youtu.be/q8KF3flIyKs?t=540) [the link prefix is gone and if i hover](https://youtu.be/q8KF3flIyKs?t=543) [on this then i can actually](https://youtu.be/q8KF3flIyKs?t=546) [see the details so i can take this item](https://youtu.be/q8KF3flIyKs?t=549) [right here](https://youtu.be/q8KF3flIyKs?t=552) [and](https://youtu.be/q8KF3flIyKs?t=554) [i can](https://youtu.be/q8KF3flIyKs?t=555) [actually group these two together so i'm](https://youtu.be/q8KF3flIyKs?t=556) [going to control group that and now i](https://youtu.be/q8KF3flIyKs?t=559) [have a card](https://youtu.be/q8KF3flIyKs?t=561) [that i can look at the card details just](https://youtu.be/q8KF3flIyKs?t=563) [simply by](https://youtu.be/q8KF3flIyKs?t=566) [using the control](https://youtu.be/q8KF3flIyKs?t=568) [key and hovering over that](https://youtu.be/q8KF3flIyKs?t=570) [and of course i can do the same with](https://youtu.be/q8KF3flIyKs?t=573) [this one as well](https://youtu.be/q8KF3flIyKs?t=576) [and and it is actually i think](https://youtu.be/q8KF3flIyKs?t=577) [um](https://youtu.be/q8KF3flIyKs?t=582) [an almost a reasonable workflow um](https://youtu.be/q8KF3flIyKs?t=582) [i](https://youtu.be/q8KF3flIyKs?t=587) [i think it is not really efficient](https://youtu.be/q8KF3flIyKs?t=587) [so i think you you would agree with me](https://youtu.be/q8KF3flIyKs?t=592) [that](https://youtu.be/q8KF3flIyKs?t=594) [at this time](https://youtu.be/q8KF3flIyKs?t=595) [the way this works is](https://youtu.be/q8KF3flIyKs?t=597) [a bit cumbersome of course i can have my](https://youtu.be/q8KF3flIyKs?t=600) [link](https://youtu.be/q8KF3flIyKs?t=604) [and if i go ahead and](https://youtu.be/q8KF3flIyKs?t=605) [alt copy this](https://youtu.be/q8KF3flIyKs?t=608) [and](https://youtu.be/q8KF3flIyKs?t=609) [come in here and edit i can rewrite it i](https://youtu.be/q8KF3flIyKs?t=610) [can add](https://youtu.be/q8KF3flIyKs?t=614) [stuff here but i think it is still](https://youtu.be/q8KF3flIyKs?t=615) [a bit uh](https://youtu.be/q8KF3flIyKs?t=618) [cumbersome to make this happen](https://youtu.be/q8KF3flIyKs?t=620) [so](https://youtu.be/q8KF3flIyKs?t=622) [what i'm thinking is the following](https://youtu.be/q8KF3flIyKs?t=623) [if](https://youtu.be/q8KF3flIyKs?t=626) [i copy](https://youtu.be/q8KF3flIyKs?t=627) [one of these](https://youtu.be/q8KF3flIyKs?t=629) [elements so let me](https://youtu.be/q8KF3flIyKs?t=630) [take this card and i'm going to just](https://youtu.be/q8KF3flIyKs?t=633) [create a copy of it using control c](https://youtu.be/q8KF3flIyKs?t=635) [and let me open up a text editor and](https://youtu.be/q8KF3flIyKs?t=638) [paste this in so yeah so this is](https://youtu.be/q8KF3flIyKs?t=642) [this is not](https://youtu.be/q8KF3flIyKs?t=645) [extremely um](https://youtu.be/q8KF3flIyKs?t=646) [user friendly this is](https://youtu.be/q8KF3flIyKs?t=649) [how the the copied element so this](https://youtu.be/q8KF3flIyKs?t=651) [element this is how it looks like](https://youtu.be/q8KF3flIyKs?t=654) [actually if i would come in here](https://youtu.be/q8KF3flIyKs?t=656) [let me just show you so](https://youtu.be/q8KF3flIyKs?t=658) [i'm going to](https://youtu.be/q8KF3flIyKs?t=660) [and](https://youtu.be/q8KF3flIyKs?t=662) [introducing i search for the text so](https://youtu.be/q8KF3flIyKs?t=664) [here you go here's my](https://youtu.be/q8KF3flIyKs?t=667) [uh introducing a sketchnoting](https://youtu.be/q8KF3flIyKs?t=669) [line now notice that there's this](https://youtu.be/q8KF3flIyKs?t=673) [backslash n](https://youtu.be/q8KF3flIyKs?t=676) [which means it's a new line but i i can](https://youtu.be/q8KF3flIyKs?t=678) [go ahead and i'm going to say](https://youtu.be/q8KF3flIyKs?t=680) [um](https://youtu.be/q8KF3flIyKs?t=683) [whatever uh i](https://youtu.be/q8KF3flIyKs?t=686) [nothing comes to mind but i'm going to](https://youtu.be/q8KF3flIyKs?t=689) [change](https://youtu.be/q8KF3flIyKs?t=691) [introducing to whatever and i'm going to](https://youtu.be/q8KF3flIyKs?t=692) [go ahead and copy](https://youtu.be/q8KF3flIyKs?t=694) [this](https://youtu.be/q8KF3flIyKs?t=696) [text and then press ctrl v and xcalitra](https://youtu.be/q8KF3flIyKs?t=697) [and you can see that actually what was](https://youtu.be/q8KF3flIyKs?t=702) [pasted is whatever sketchnoting so this](https://youtu.be/q8KF3flIyKs?t=705) [actually works](https://youtu.be/q8KF3flIyKs?t=708) [quite nice but it is not yet perfect so](https://youtu.be/q8KF3flIyKs?t=710) [let me show you why it's not yet perfect](https://youtu.be/q8KF3flIyKs?t=714) [so i'm going to add a third line](https://youtu.be/q8KF3flIyKs?t=716) [to this](https://youtu.be/q8KF3flIyKs?t=720) [for the sake of](https://youtu.be/q8KF3flIyKs?t=721) [demonstration and this is](https://youtu.be/q8KF3flIyKs?t=723) [uh](https://youtu.be/q8KF3flIyKs?t=726) [next line that's going to be the](https://youtu.be/q8KF3flIyKs?t=728) [the name of that](https://youtu.be/q8KF3flIyKs?t=730) [great and i'm going to](https://youtu.be/q8KF3flIyKs?t=732) [not save this but i'm going to copy this](https://youtu.be/q8KF3flIyKs?t=734) [and i'm going to paste it here](https://youtu.be/q8KF3flIyKs?t=738) [and what you can see is these lines are](https://youtu.be/q8KF3flIyKs?t=741) [now](https://youtu.be/q8KF3flIyKs?t=745) [a bit crowded so so](https://youtu.be/q8KF3flIyKs?t=748) [if i actually come here and double click](https://youtu.be/q8KF3flIyKs?t=751) [on this](https://youtu.be/q8KF3flIyKs?t=754) [and edit it and then on edit it then you](https://youtu.be/q8KF3flIyKs?t=755) [can see that the correct sizing uh was](https://youtu.be/q8KF3flIyKs?t=758) [achieved so](https://youtu.be/q8KF3flIyKs?t=761) [when i changed the text then actually](https://youtu.be/q8KF3flIyKs?t=762) [the size of the text box](https://youtu.be/q8KF3flIyKs?t=765) [uh needs to be changed as well so we](https://youtu.be/q8KF3flIyKs?t=768) [will need to do something about that](https://youtu.be/q8KF3flIyKs?t=770) [as one example](https://youtu.be/q8KF3flIyKs?t=774) [um](https://youtu.be/q8KF3flIyKs?t=777) [also of course i need to look for the](https://youtu.be/q8KF3flIyKs?t=778) [link](https://youtu.be/q8KF3flIyKs?t=781) [and the link is going to be somewhere um](https://youtu.be/q8KF3flIyKs?t=782) [card details](https://youtu.be/q8KF3flIyKs?t=789) [come on](https://youtu.be/q8KF3flIyKs?t=791) [card](https://youtu.be/q8KF3flIyKs?t=792) [there is the card details here](https://youtu.be/q8KF3flIyKs?t=794) [it's a bit uh](https://youtu.be/q8KF3flIyKs?t=798) [card](https://youtu.be/q8KF3flIyKs?t=802) [what was the name of my file card](https://youtu.be/q8KF3flIyKs?t=804) [details yes why am i not](https://youtu.be/q8KF3flIyKs?t=806) [oh](https://youtu.be/q8KF3flIyKs?t=809) [yes i'm not seeing the card details](https://youtu.be/q8KF3flIyKs?t=809) [because i actually need to copy paste](https://youtu.be/q8KF3flIyKs?t=812) [this element](https://youtu.be/q8KF3flIyKs?t=814) [not in preview mode but i need to](https://youtu.be/q8KF3flIyKs?t=816) [so right now](https://youtu.be/q8KF3flIyKs?t=819) [i actually don't see the this text](https://youtu.be/q8KF3flIyKs?t=821) [but the excludra element only](https://youtu.be/q8KF3flIyKs?t=824) [includes](https://youtu.be/q8KF3flIyKs?t=828) [this](https://youtu.be/q8KF3flIyKs?t=829) [unicode quotation mark so if i](https://youtu.be/q8KF3flIyKs?t=830) [come here and search for this unicode](https://youtu.be/q8KF3flIyKs?t=833) [mark that i should find it's right here](https://youtu.be/q8KF3flIyKs?t=836) [but this is not](https://youtu.be/q8KF3flIyKs?t=839) [the text](https://youtu.be/q8KF3flIyKs?t=841) [i really need i](https://youtu.be/q8KF3flIyKs?t=842) [in fact](https://youtu.be/q8KF3flIyKs?t=845) [i need the](https://youtu.be/q8KF3flIyKs?t=846) [um](https://youtu.be/q8KF3flIyKs?t=848) [the link text so what i'm going to do is](https://youtu.be/q8KF3flIyKs?t=849) [i'm going to change to raw mode which of](https://youtu.be/q8KF3flIyKs?t=852) [course looks ugly like this i'm going to](https://youtu.be/q8KF3flIyKs?t=856) [copy](https://youtu.be/q8KF3flIyKs?t=859) [this](https://youtu.be/q8KF3flIyKs?t=861) [object](https://youtu.be/q8KF3flIyKs?t=862) [with the entire link if i go back to](https://youtu.be/q8KF3flIyKs?t=866) [preview mode then of course that](https://youtu.be/q8KF3flIyKs?t=869) [is going to be still that small](https://youtu.be/q8KF3flIyKs?t=871) [link in the corner](https://youtu.be/q8KF3flIyKs?t=874) [i'm just going to delete that we don't](https://youtu.be/q8KF3flIyKs?t=876) [need it i come back here i](https://youtu.be/q8KF3flIyKs?t=878) [delete this and paste my new item and](https://youtu.be/q8KF3flIyKs?t=881) [you can see here the](https://youtu.be/q8KF3flIyKs?t=884) [card details introducing sketchnoting so](https://youtu.be/q8KF3flIyKs?t=886) [if i want](https://youtu.be/q8KF3flIyKs?t=890) [i can](https://youtu.be/q8KF3flIyKs?t=891) [for example](https://youtu.be/q8KF3flIyKs?t=893) [change this to](https://youtu.be/q8KF3flIyKs?t=895) [don't need to be an artist](https://youtu.be/q8KF3flIyKs?t=897) [and then it is going to change my](https://youtu.be/q8KF3flIyKs?t=900) [link](https://youtu.be/q8KF3flIyKs?t=904) [and well i showed you previously what i](https://youtu.be/q8KF3flIyKs?t=905) [can do with](https://youtu.be/q8KF3flIyKs?t=908) [changing introducing sketchnoting so i](https://youtu.be/q8KF3flIyKs?t=909) [can change](https://youtu.be/q8KF3flIyKs?t=912) [those as well and if i copy](https://youtu.be/q8KF3flIyKs?t=913) [and come back here and paste](https://youtu.be/q8KF3flIyKs?t=917) [then](https://youtu.be/q8KF3flIyKs?t=919) [i may need to](https://youtu.be/q8KF3flIyKs?t=921) [change from raw mode](https://youtu.be/q8KF3flIyKs?t=924) [back and forth but now](https://youtu.be/q8KF3flIyKs?t=927) [the link](https://youtu.be/q8KF3flIyKs?t=930) [actually works](https://youtu.be/q8KF3flIyKs?t=931) [so that's](https://youtu.be/q8KF3flIyKs?t=933) [what we want to achieve](https://youtu.be/q8KF3flIyKs?t=934) [right so so so now we know how to modify](https://youtu.be/q8KF3flIyKs?t=939) [this text file so what i want to do](https://youtu.be/q8KF3flIyKs?t=942) [is i want to create](https://youtu.be/q8KF3flIyKs?t=945) [a](https://youtu.be/q8KF3flIyKs?t=947) [uh](https://youtu.be/q8KF3flIyKs?t=948) [as a templater script that](https://youtu.be/q8KF3flIyKs?t=951) [will do the following when i](https://youtu.be/q8KF3flIyKs?t=955) [am uh on this](https://youtu.be/q8KF3flIyKs?t=958) [egg](https://youtu.be/q8KF3flIyKs?t=960) [when](https://youtu.be/q8KF3flIyKs?t=961) [i activate the title](https://youtu.be/q8KF3flIyKs?t=962) [so the heading line i want a shortcut](https://youtu.be/q8KF3flIyKs?t=965) [that](https://youtu.be/q8KF3flIyKs?t=969) [goes ahead and takes the](https://youtu.be/q8KF3flIyKs?t=971) [takes the title copies](https://youtu.be/q8KF3flIyKs?t=975) [the heading text](https://youtu.be/q8KF3flIyKs?t=978) [and then does this editing for me that](https://youtu.be/q8KF3flIyKs?t=980) [it will](https://youtu.be/q8KF3flIyKs?t=983) [place that text to replace](https://youtu.be/q8KF3flIyKs?t=985) [this text item and will also](https://youtu.be/q8KF3flIyKs?t=988) [update the link here](https://youtu.be/q8KF3flIyKs?t=992) [as well and places it on the clipboard](https://youtu.be/q8KF3flIyKs?t=994) [so i can paste it in and my idea is the](https://youtu.be/q8KF3flIyKs?t=998) [workflow i'm going to be doing](https://youtu.be/q8KF3flIyKs?t=1001) [is when i want to add a new](https://youtu.be/q8KF3flIyKs?t=1004) [element to the drawing on the right hand](https://youtu.be/q8KF3flIyKs?t=1008) [side i'm first going to create](https://youtu.be/q8KF3flIyKs?t=1011) [my new card](https://youtu.be/q8KF3flIyKs?t=1015) [i'm](https://youtu.be/q8KF3flIyKs?t=1018) [may even add some details if i want](https://youtu.be/q8KF3flIyKs?t=1019) [whatever i'm not going to leave that](https://youtu.be/q8KF3flIyKs?t=1022) [here but](https://youtu.be/q8KF3flIyKs?t=1024) [i'm going to press my shortcut and come](https://youtu.be/q8KF3flIyKs?t=1026) [over here and paste it and my](https://youtu.be/q8KF3flIyKs?t=1029) [expectation](https://youtu.be/q8KF3flIyKs?t=1032) [is that this will then speed up my](https://youtu.be/q8KF3flIyKs?t=1033) [process because this will paste a card](https://youtu.be/q8KF3flIyKs?t=1035) [with this text on it and with the link](https://youtu.be/q8KF3flIyKs?t=1038) [in the bottom right](https://youtu.be/q8KF3flIyKs?t=1041) [so that's](https://youtu.be/q8KF3flIyKs?t=1043) [the idea and maybe](https://youtu.be/q8KF3flIyKs?t=1044) [we can already go ahead and just create](https://youtu.be/q8KF3flIyKs?t=1046) [one more](https://youtu.be/q8KF3flIyKs?t=1051) [document here so this is going to be](https://youtu.be/q8KF3flIyKs?t=1054) [my new node and](https://youtu.be/q8KF3flIyKs?t=1057) [this is going to be my](https://youtu.be/q8KF3flIyKs?t=1059) [clothesline](https://youtu.be/q8KF3flIyKs?t=1063) [script](https://youtu.be/q8KF3flIyKs?t=1064) [and then let me just](https://youtu.be/q8KF3flIyKs?t=1067) [think this is the format right](https://youtu.be/q8KF3flIyKs?t=1071) [i always forget](https://youtu.be/q8KF3flIyKs?t=1075) [the the characters to use let me just](https://youtu.be/q8KF3flIyKs?t=1078) [yes that is indeed](https://youtu.be/q8KF3flIyKs?t=1080) [uh](https://youtu.be/q8KF3flIyKs?t=1083) [the right format](https://youtu.be/q8KF3flIyKs?t=1084) [okay so](https://youtu.be/q8KF3flIyKs?t=1088) [let me](https://youtu.be/q8KF3flIyKs?t=1090) [uh take a look i'm i'm](https://youtu.be/q8KF3flIyKs?t=1091) [afraid that my template term might be](https://youtu.be/q8KF3flIyKs?t=1094) [out of date or may not even be updated](https://youtu.be/q8KF3flIyKs?t=1098) [in my](https://youtu.be/q8KF3flIyKs?t=1101) [test environment so in the templator was](https://youtu.be/q8KF3flIyKs?t=1102) [off](https://youtu.be/q8KF3flIyKs?t=1105) [that's uh](https://youtu.be/q8KF3flIyKs?t=1106) [that's why the text didn't you see](https://youtu.be/q8KF3flIyKs?t=1110) [because when templater is on i should](https://youtu.be/q8KF3flIyKs?t=1112) [see a](https://youtu.be/q8KF3flIyKs?t=1115) [syntax highlight highlighted text in](https://youtu.be/q8KF3flIyKs?t=1120) [this case](https://youtu.be/q8KF3flIyKs?t=1123) [i did not so](https://youtu.be/q8KF3flIyKs?t=1124) [so this is where we want our code to go](https://youtu.be/q8KF3flIyKs?t=1127) [and let me just](https://youtu.be/q8KF3flIyKs?t=1130) [do this so um](https://youtu.be/q8KF3flIyKs?t=1132) [i will want to add stuff to the](https://youtu.be/q8KF3flIyKs?t=1135) [clipboard what i wanted to do here is so](https://youtu.be/q8KF3flIyKs?t=1137) [this is my](https://youtu.be/q8KF3flIyKs?t=1140) [const result](https://youtu.be/q8KF3flIyKs?t=1146) [equals and for the time being i'm just](https://youtu.be/q8KF3flIyKs?t=1148) [going to](https://youtu.be/q8KF3flIyKs?t=1151) [paste here](https://youtu.be/q8KF3flIyKs?t=1152) [uh this](https://youtu.be/q8KF3flIyKs?t=1154) [long text that we have](https://youtu.be/q8KF3flIyKs?t=1155) [and what i want to do is i want to](https://youtu.be/q8KF3flIyKs?t=1158) [add couple of items up here so this is](https://youtu.be/q8KF3flIyKs?t=1163) [just to](https://youtu.be/q8KF3flIyKs?t=1166) [prepare](https://youtu.be/q8KF3flIyKs?t=1168) [uh our](https://youtu.be/q8KF3flIyKs?t=1169) [our code so i think i want a](https://youtu.be/q8KF3flIyKs?t=1170) [const card](https://youtu.be/q8KF3flIyKs?t=1176) [title](https://youtu.be/q8KF3flIyKs?t=1179) [equals and we will work on that](https://youtu.be/q8KF3flIyKs?t=1180) [i also want a const](https://youtu.be/q8KF3flIyKs?t=1184) [um](https://youtu.be/q8KF3flIyKs?t=1187) [so what i will want is a width](https://youtu.be/q8KF3flIyKs?t=1189) [you'll you'll see](https://youtu.be/q8KF3flIyKs?t=1194) [how we will do it const](https://youtu.be/q8KF3flIyKs?t=1196) [height](https://youtu.be/q8KF3flIyKs?t=1198) [and i also need a const](https://youtu.be/q8KF3flIyKs?t=1201) [baseline i'll explain in a second](https://youtu.be/q8KF3flIyKs?t=1205) [why these are](https://youtu.be/q8KF3flIyKs?t=1208) [important](https://youtu.be/q8KF3flIyKs?t=1211) [and i actually think that's all the](https://youtu.be/q8KF3flIyKs?t=1213) [constants i need and then what i will](https://youtu.be/q8KF3flIyKs?t=1215) [want to do](https://youtu.be/q8KF3flIyKs?t=1218) [is](https://youtu.be/q8KF3flIyKs?t=1219) [no i will need a](https://youtu.be/q8KF3flIyKs?t=1221) [card](https://youtu.be/q8KF3flIyKs?t=1226) [title and i need a const card](https://youtu.be/q8KF3flIyKs?t=1227) [title](https://youtu.be/q8KF3flIyKs?t=1230) [wrapped](https://youtu.be/q8KF3flIyKs?t=1233) [uh and we are going to be replacing all](https://youtu.be/q8KF3flIyKs?t=1236) [of these um](https://youtu.be/q8KF3flIyKs?t=1238) [declarations with numbers i'm just for](https://youtu.be/q8KF3flIyKs?t=1240) [the time being i'm just](https://youtu.be/q8KF3flIyKs?t=1243) [creating some placeholders and so](https://youtu.be/q8KF3flIyKs?t=1244) [because i'm going to use the](https://youtu.be/q8KF3flIyKs?t=1249) [card title](https://youtu.be/q8KF3flIyKs?t=1251) [which is the section heading](https://youtu.be/q8KF3flIyKs?t=1253) [to](https://youtu.be/q8KF3flIyKs?t=1255) [edit](https://youtu.be/q8KF3flIyKs?t=1256) [my link right here at the bottom here](https://youtu.be/q8KF3flIyKs?t=1258) [so i'm going to](https://youtu.be/q8KF3flIyKs?t=1263) [take this text](https://youtu.be/q8KF3flIyKs?t=1266) [delete it and i'm going to add](https://youtu.be/q8KF3flIyKs?t=1268) [a dollar](https://youtu.be/q8KF3flIyKs?t=1271) [curly brackets](https://youtu.be/q8KF3flIyKs?t=1273) [and value](https://youtu.be/q8KF3flIyKs?t=1276) [so what this does is](https://youtu.be/q8KF3flIyKs?t=1278) [um](https://youtu.be/q8KF3flIyKs?t=1280) [this will replace the dollar curly](https://youtu.be/q8KF3flIyKs?t=1281) [brackets card's value with the actual](https://youtu.be/q8KF3flIyKs?t=1284) [value of the variable i think we need](https://youtu.be/q8KF3flIyKs?t=1287) [one more and that is going to be](https://youtu.be/q8KF3flIyKs?t=1291) [the const](https://youtu.be/q8KF3flIyKs?t=1294) [card](https://youtu.be/q8KF3flIyKs?t=1297) [detail](https://youtu.be/q8KF3flIyKs?t=1299) [file](https://youtu.be/q8KF3flIyKs?t=1301) [or let's just call it file name](https://youtu.be/q8KF3flIyKs?t=1302) [file name](https://youtu.be/q8KF3flIyKs?t=1306) [right so we are going to pick the file](https://youtu.be/q8KF3flIyKs?t=1307) [name up](https://youtu.be/q8KF3flIyKs?t=1310) [uh from templater as well but uh so this](https://youtu.be/q8KF3flIyKs?t=1311) [is what we do here and let me just go](https://youtu.be/q8KF3flIyKs?t=1315) [ahead and type these details in and then](https://youtu.be/q8KF3flIyKs?t=1319) [we'll continue from there](https://youtu.be/q8KF3flIyKs?t=1322) [okay so one more thing i did here is i](https://youtu.be/q8KF3flIyKs?t=1357) [changed the font size](https://youtu.be/q8KF3flIyKs?t=1360) [and i'm going to](https://youtu.be/q8KF3flIyKs?t=1363) [change this font size to 10.](https://youtu.be/q8KF3flIyKs?t=1365) [it is not](https://youtu.be/q8KF3flIyKs?t=1368) [really that necessary but it will be](https://youtu.be/q8KF3flIyKs?t=1369) [easier to work with a whole number](https://youtu.be/q8KF3flIyKs?t=1371) [instead of that 10 point something](https://youtu.be/q8KF3flIyKs?t=1374) [for that reason i'm actually going to](https://youtu.be/q8KF3flIyKs?t=1379) [change](https://youtu.be/q8KF3flIyKs?t=1381) [the font size here as well so this is](https://youtu.be/q8KF3flIyKs?t=1382) [the font size of my](https://youtu.be/q8KF3flIyKs?t=1385) [link i'm going to change this to 10](https://youtu.be/q8KF3flIyKs?t=1387) [as well](https://youtu.be/q8KF3flIyKs?t=1391) [and](https://youtu.be/q8KF3flIyKs?t=1393) [i think](https://youtu.be/q8KF3flIyKs?t=1394) [that is okay so what i did is i created](https://youtu.be/q8KF3flIyKs?t=1396) [these constants and i actually added](https://youtu.be/q8KF3flIyKs?t=1400) [them in the text](https://youtu.be/q8KF3flIyKs?t=1404) [it takes a bit of looking around that](https://youtu.be/q8KF3flIyKs?t=1406) [you know that you're adding it to the](https://youtu.be/q8KF3flIyKs?t=1408) [right](https://youtu.be/q8KF3flIyKs?t=1410) [object maybe i can show you](https://youtu.be/q8KF3flIyKs?t=1411) [this here a bit better that](https://youtu.be/q8KF3flIyKs?t=1414) [so you can see that](https://youtu.be/q8KF3flIyKs?t=1417) [this object that is or element that is](https://youtu.be/q8KF3flIyKs?t=1420) [the](https://youtu.be/q8KF3flIyKs?t=1423) [text element the introducing sketch](https://youtu.be/q8KF3flIyKs?t=1424) [noting element](https://youtu.be/q8KF3flIyKs?t=1427) [is a couple of lines long from here to](https://youtu.be/q8KF3flIyKs?t=1430) [here and](https://youtu.be/q8KF3flIyKs?t=1432) [and it takes a bit of time to](https://youtu.be/q8KF3flIyKs?t=1435) [find the stuff here but here's my font](https://youtu.be/q8KF3flIyKs?t=1439) [size within that and then](https://youtu.be/q8KF3flIyKs?t=1442) [here's my width](https://youtu.be/q8KF3flIyKs?t=1445) [my height](https://youtu.be/q8KF3flIyKs?t=1448) [is somewhere](https://youtu.be/q8KF3flIyKs?t=1449) [etc so you can you can see here's my](https://youtu.be/q8KF3flIyKs?t=1451) [width my height](https://youtu.be/q8KF3flIyKs?t=1453) [and my baseline](https://youtu.be/q8KF3flIyKs?t=1455) [these are the three](https://youtu.be/q8KF3flIyKs?t=1458) [variables width height and](https://youtu.be/q8KF3flIyKs?t=1460) [baseline that xcoli draw uses to set the](https://youtu.be/q8KF3flIyKs?t=1463) [right](https://youtu.be/q8KF3flIyKs?t=1466) [box size](https://youtu.be/q8KF3flIyKs?t=1469) [so let me just](https://youtu.be/q8KF3flIyKs?t=1471) [look for the template or help so this is](https://youtu.be/q8KF3flIyKs?t=1473) [going to be obsidian template or](https://youtu.be/q8KF3flIyKs?t=1476) [clipboard](https://youtu.be/q8KF3flIyKs?t=1481) [function base current clipboard](https://youtu.be/q8KF3flIyKs?t=1484) [so](https://youtu.be/q8KF3flIyKs?t=1501) [found it here's my text](https://youtu.be/q8KF3flIyKs?t=1502) [this is navigator clipboard write](https://youtu.be/q8KF3flIyKs?t=1505) [text and i'm just going to place](https://youtu.be/q8KF3flIyKs?t=1509) [my variable here result](https://youtu.be/q8KF3flIyKs?t=1513) [like this and for the time being let's](https://youtu.be/q8KF3flIyKs?t=1518) [just say](https://youtu.be/q8KF3flIyKs?t=1521) [instead of let's just make this 50 50](https://youtu.be/q8KF3flIyKs?t=1522) [20 just so it's not](https://youtu.be/q8KF3flIyKs?t=1526) [and card title](https://youtu.be/q8KF3flIyKs?t=1528) [test title](https://youtu.be/q8KF3flIyKs?t=1530) [and this is going to be test](https://youtu.be/q8KF3flIyKs?t=1532) [title](https://youtu.be/q8KF3flIyKs?t=1537) [and this is](https://youtu.be/q8KF3flIyKs?t=1538) [i think the actual file name](https://youtu.be/q8KF3flIyKs?t=1540) [i can get pretty quick](https://youtu.be/q8KF3flIyKs?t=1544) [like this](https://youtu.be/q8KF3flIyKs?t=1551) [and hopefully what this will result in](https://youtu.be/q8KF3flIyKs?t=1553) [so let's just execute this script now so](https://youtu.be/q8KF3flIyKs?t=1555) [what i've done here](https://youtu.be/q8KF3flIyKs?t=1558) [is i added some](https://youtu.be/q8KF3flIyKs?t=1560) [mock-up](https://youtu.be/q8KF3flIyKs?t=1562) [values here](https://youtu.be/q8KF3flIyKs?t=1564) [and](https://youtu.be/q8KF3flIyKs?t=1565) [i went ahead and added this line to the](https://youtu.be/q8KF3flIyKs?t=1567) [end to write the material to the](https://youtu.be/q8KF3flIyKs?t=1571) [clipboard so if i](https://youtu.be/q8KF3flIyKs?t=1574) [execute this](https://youtu.be/q8KF3flIyKs?t=1576) [then](https://youtu.be/q8KF3flIyKs?t=1578) [i get an error](https://youtu.be/q8KF3flIyKs?t=1579) [templater parsing error result is not](https://youtu.be/q8KF3flIyKs?t=1583) [defined on the heck](https://youtu.be/q8KF3flIyKs?t=1586) [okay](https://youtu.be/q8KF3flIyKs?t=1594) [spelling mistake](https://youtu.be/q8KF3flIyKs?t=1596) [okay so now this is on the clipboard and](https://youtu.be/q8KF3flIyKs?t=1600) [if i](https://youtu.be/q8KF3flIyKs?t=1602) [come here and open my](https://youtu.be/q8KF3flIyKs?t=1604) [drawing](https://youtu.be/q8KF3flIyKs?t=1607) [let me just see what happens if i click](https://youtu.be/q8KF3flIyKs?t=1608) [paste](https://youtu.be/q8KF3flIyKs?t=1611) [this is not](https://youtu.be/q8KF3flIyKs?t=1613) [yet as good as i would want it to be](https://youtu.be/q8KF3flIyKs?t=1615) [okay so](https://youtu.be/q8KF3flIyKs?t=1659) [after a long](https://youtu.be/q8KF3flIyKs?t=1661) [and hard look at my code i found](https://youtu.be/q8KF3flIyKs?t=1663) [where the issue is](https://youtu.be/q8KF3flIyKs?t=1667) [and this is the issue](https://youtu.be/q8KF3flIyKs?t=1669) [and that's actually](https://youtu.be/q8KF3flIyKs?t=1671) [a stupid error on my side](https://youtu.be/q8KF3flIyKs?t=1672) [this was actually a new line character](https://youtu.be/q8KF3flIyKs?t=1678) [which broke the json](https://youtu.be/q8KF3flIyKs?t=1680) [output](https://youtu.be/q8KF3flIyKs?t=1682) [and i need to escape this because i](https://youtu.be/q8KF3flIyKs?t=1683) [actually want](https://youtu.be/q8KF3flIyKs?t=1686) [a slash n](https://youtu.be/q8KF3flIyKs?t=1688) [or backslash and in the text](https://youtu.be/q8KF3flIyKs?t=1689) [and so that was the issue if i just have](https://youtu.be/q8KF3flIyKs?t=1692) [backslash and then](https://youtu.be/q8KF3flIyKs?t=1695) [the card title wrapped](https://youtu.be/q8KF3flIyKs?t=1697) [constant](https://youtu.be/q8KF3flIyKs?t=1699) [was test new line title](https://youtu.be/q8KF3flIyKs?t=1700) [so i need to](https://youtu.be/q8KF3flIyKs?t=1704) [change it to](https://youtu.be/q8KF3flIyKs?t=1706) [backslash backslash and so let me just](https://youtu.be/q8KF3flIyKs?t=1708) [make it bigger like this](https://youtu.be/q8KF3flIyKs?t=1711) [um](https://youtu.be/q8KF3flIyKs?t=1713) [so](https://youtu.be/q8KF3flIyKs?t=1715) [now if i run my script](https://youtu.be/q8KF3flIyKs?t=1716) [uh close line script](https://youtu.be/q8KF3flIyKs?t=1718) [and i paste it here then indeed i get](https://youtu.be/q8KF3flIyKs?t=1721) [this](https://youtu.be/q8KF3flIyKs?t=1725) [almost](https://youtu.be/q8KF3flIyKs?t=1727) [good looking solution of course the](https://youtu.be/q8KF3flIyKs?t=1729) [sizing of the text is not good and](https://youtu.be/q8KF3flIyKs?t=1731) [but if i if i look at it in preview mode](https://youtu.be/q8KF3flIyKs?t=1735) [then i already have](https://youtu.be/q8KF3flIyKs?t=1739) [the right](https://youtu.be/q8KF3flIyKs?t=1743) [text here](https://youtu.be/q8KF3flIyKs?t=1744) [and indeed it cannot find the test title](https://youtu.be/q8KF3flIyKs?t=1746) [section in the page because it simply](https://youtu.be/q8KF3flIyKs?t=1750) [does not exist so that's](https://youtu.be/q8KF3flIyKs?t=1752) [that's also](https://youtu.be/q8KF3flIyKs?t=1755) [an issue](https://youtu.be/q8KF3flIyKs?t=1756) [so](https://youtu.be/q8KF3flIyKs?t=1758) [um](https://youtu.be/q8KF3flIyKs?t=1759) [now let's see what can we do about the](https://youtu.be/q8KF3flIyKs?t=1760) [text element](https://youtu.be/q8KF3flIyKs?t=1762) [and for that let's look at the](https://youtu.be/q8KF3flIyKs?t=1763) [x collider automate and let's just](https://youtu.be/q8KF3flIyKs?t=1767) [experiment a little with x collider](https://youtu.be/q8KF3flIyKs?t=1770) [automate let me just find](https://youtu.be/q8KF3flIyKs?t=1773) [the](https://youtu.be/q8KF3flIyKs?t=1776) [right](https://youtu.be/q8KF3flIyKs?t=1777) [window here](https://youtu.be/q8KF3flIyKs?t=1778) [we are going to look at xcollidro](https://youtu.be/q8KF3flIyKs?t=1781) [automate and](https://youtu.be/q8KF3flIyKs?t=1783) [so you can](https://youtu.be/q8KF3flIyKs?t=1785) [go online and](https://youtu.be/q8KF3flIyKs?t=1787) [find excalidre automate help i'll put](https://youtu.be/q8KF3flIyKs?t=1789) [this link in the description of the](https://youtu.be/q8KF3flIyKs?t=1792) [video so you can find it and so we have](https://youtu.be/q8KF3flIyKs?t=1795) [a whole bunch of good functions here and](https://youtu.be/q8KF3flIyKs?t=1798) [we're going to be](https://youtu.be/q8KF3flIyKs?t=1800) [actually looking at the add text](https://youtu.be/q8KF3flIyKs?t=1802) [function and we are also going to use](https://youtu.be/q8KF3flIyKs?t=1806) [the wrap text](https://youtu.be/q8KF3flIyKs?t=1809) [function](https://youtu.be/q8KF3flIyKs?t=1811) [for our purposes](https://youtu.be/q8KF3flIyKs?t=1813) [and so if i look at add text](https://youtu.be/q8KF3flIyKs?t=1815) [here we go adding objects so if i come](https://youtu.be/q8KF3flIyKs?t=1819) [here](https://youtu.be/q8KF3flIyKs?t=1822) [and i look for](https://youtu.be/q8KF3flIyKs?t=1823) [add text](https://youtu.be/q8KF3flIyKs?t=1825) [then this is](https://youtu.be/q8KF3flIyKs?t=1828) [how the add text looks like i need to](https://youtu.be/q8KF3flIyKs?t=1830) [provide](https://youtu.be/q8KF3flIyKs?t=1833) [all in all](https://youtu.be/q8KF3flIyKs?t=1835) [um](https://youtu.be/q8KF3flIyKs?t=1836) [three numbers](https://youtu.be/q8KF3flIyKs?t=1837) [add text is going to use the basic](https://youtu.be/q8KF3flIyKs?t=1838) [object format so if i come](https://youtu.be/q8KF3flIyKs?t=1842) [back here and i'm looking at the element](https://youtu.be/q8KF3flIyKs?t=1846) [style](https://youtu.be/q8KF3flIyKs?t=1849) [then](https://youtu.be/q8KF3flIyKs?t=1850) [the element style](https://youtu.be/q8KF3flIyKs?t=1851) [has a font size](https://youtu.be/q8KF3flIyKs?t=1853) [property so i will need to](https://youtu.be/q8KF3flIyKs?t=1857) [set the font size property but so let's](https://youtu.be/q8KF3flIyKs?t=1860) [start to experiment here first of all](https://youtu.be/q8KF3flIyKs?t=1862) [i'm going to say that](https://youtu.be/q8KF3flIyKs?t=1865) [uh ea equals x collateral automate](https://youtu.be/q8KF3flIyKs?t=1867) [and then](https://youtu.be/q8KF3flIyKs?t=1871) [i want to](https://youtu.be/q8KF3flIyKs?t=1872) [reset](https://youtu.be/q8KF3flIyKs?t=1874) [ea that's always how you start any](https://youtu.be/q8KF3flIyKs?t=1876) [script that cleans everything](https://youtu.be/q8KF3flIyKs?t=1878) [that was previously set](https://youtu.be/q8KF3flIyKs?t=1881) [and then i want to](https://youtu.be/q8KF3flIyKs?t=1883) [set the style font style](https://youtu.be/q8KF3flIyKs?t=1887) [font size actually to 10](https://youtu.be/q8KF3flIyKs?t=1891) [and then](https://youtu.be/q8KF3flIyKs?t=1895) [i want to call the add text](https://youtu.be/q8KF3flIyKs?t=1896) [command and i'm going to just](https://youtu.be/q8KF3flIyKs?t=1900) [now](https://youtu.be/q8KF3flIyKs?t=1903) [actually](https://youtu.be/q8KF3flIyKs?t=1904) [this is going to be](https://youtu.be/q8KF3flIyKs?t=1906) [good](https://youtu.be/q8KF3flIyKs?t=1909) [except that](https://youtu.be/q8KF3flIyKs?t=1910) [i'm going to want here](https://youtu.be/q8KF3flIyKs?t=1912) [to call the](https://youtu.be/q8KF3flIyKs?t=1914) [wrap](https://youtu.be/q8KF3flIyKs?t=1916) [text function and i want to wrap this to](https://youtu.be/q8KF3flIyKs?t=1918) [so i'm not going to put in a new line](https://youtu.be/q8KF3flIyKs?t=1922) [character but i'm going to wrap this to](https://youtu.be/q8KF3flIyKs?t=1925) [uh](https://youtu.be/q8KF3flIyKs?t=1928) [10 characters long so this is going to](https://youtu.be/q8KF3flIyKs?t=1930) [be 10 characters long](https://youtu.be/q8KF3flIyKs?t=1932) [and so with this i created a new object](https://youtu.be/q8KF3flIyKs?t=1935) [and i want to read that object](https://youtu.be/q8KF3flIyKs?t=1938) [so um](https://youtu.be/q8KF3flIyKs?t=1941) [i'm going to look at the elements](https://youtu.be/q8KF3flIyKs?t=1942) [dictionary](https://youtu.be/q8KF3flIyKs?t=1945) [and i'm going to use the returned id](https://youtu.be/q8KF3flIyKs?t=1946) [and that is going to be my](https://youtu.be/q8KF3flIyKs?t=1950) [element and then i can take the width of](https://youtu.be/q8KF3flIyKs?t=1953) [the element i can take the height of the](https://youtu.be/q8KF3flIyKs?t=1956) [element and i can take the baseline](https://youtu.be/q8KF3flIyKs?t=1959) [of the element as variables](https://youtu.be/q8KF3flIyKs?t=1962) [so that's](https://youtu.be/q8KF3flIyKs?t=1966) [what we are going to](https://youtu.be/q8KF3flIyKs?t=1968) [use to](https://youtu.be/q8KF3flIyKs?t=1970) [customize our](https://youtu.be/q8KF3flIyKs?t=1972) [template or script](https://youtu.be/q8KF3flIyKs?t=1973) [okay so we're going to use these uh in](https://youtu.be/q8KF3flIyKs?t=1975) [our script so let's just start to](https://youtu.be/q8KF3flIyKs?t=1978) [copy the elements over to](https://youtu.be/q8KF3flIyKs?t=1982) [our script here](https://youtu.be/q8KF3flIyKs?t=1985) [maybe for the time being i'm going to](https://youtu.be/q8KF3flIyKs?t=1986) [close that](https://youtu.be/q8KF3flIyKs?t=1989) [and this and i'm going to](https://youtu.be/q8KF3flIyKs?t=1990) [zoom in a bit so you can see better what](https://youtu.be/q8KF3flIyKs?t=1993) [i'm writing](https://youtu.be/q8KF3flIyKs?t=1995) [so](https://youtu.be/q8KF3flIyKs?t=1996) [let's start with](https://youtu.be/q8KF3flIyKs?t=1998) [creating my ex cultural automate](https://youtu.be/q8KF3flIyKs?t=2000) [constant](https://youtu.be/q8KF3flIyKs?t=2002) [then i'm going to](https://youtu.be/q8KF3flIyKs?t=2003) [call reset](https://youtu.be/q8KF3flIyKs?t=2006) [and then](https://youtu.be/q8KF3flIyKs?t=2008) [let's just it's easier to copy](https://youtu.be/q8KF3flIyKs?t=2009) [stuff from here so](https://youtu.be/q8KF3flIyKs?t=2012) [we had the font size set](https://youtu.be/q8KF3flIyKs?t=2014) [to 10](https://youtu.be/q8KF3flIyKs?t=2017) [and then i'm going to call the add text](https://youtu.be/q8KF3flIyKs?t=2019) [function so i'm just adding](https://youtu.be/q8KF3flIyKs?t=2023) [a simple or single task](https://youtu.be/q8KF3flIyKs?t=2026) [text element constant id equals](https://youtu.be/q8KF3flIyKs?t=2029) [max so i'm capturing the id](https://youtu.be/q8KF3flIyKs?t=2034) [and indeed maybe 10 characters was a bit](https://youtu.be/q8KF3flIyKs?t=2036) [too short because this is one two three](https://youtu.be/q8KF3flIyKs?t=2040) [four five six seven](https://youtu.be/q8KF3flIyKs?t=2043) [9 10 11](https://youtu.be/q8KF3flIyKs?t=2045) [so let's say 12 characters](https://youtu.be/q8KF3flIyKs?t=2047) [is going to be our length we can](https://youtu.be/q8KF3flIyKs?t=2050) [experiment with this maybe this can even](https://youtu.be/q8KF3flIyKs?t=2053) [be](https://youtu.be/q8KF3flIyKs?t=2055) [14 characters long](https://youtu.be/q8KF3flIyKs?t=2056) [and then i'm using this dictionary item](https://youtu.be/q8KF3flIyKs?t=2059) [so i'm going to](https://youtu.be/q8KF3flIyKs?t=2063) [search for my](https://youtu.be/q8KF3flIyKs?t=2066) [const element is going to be](https://youtu.be/q8KF3flIyKs?t=2068) [i don't need the e here that's going to](https://youtu.be/q8KF3flIyKs?t=2071) [be](https://youtu.be/q8KF3flIyKs?t=2075) [[Music]](https://youtu.be/q8KF3flIyKs?t=2075) [the id here and then](https://youtu.be/q8KF3flIyKs?t=2076) [they are pretty](https://youtu.be/q8KF3flIyKs?t=2079) [good](https://youtu.be/q8KF3flIyKs?t=2082) [what i'm going to do is](https://youtu.be/q8KF3flIyKs?t=2083) [i still need to grab the title so](https://youtu.be/q8KF3flIyKs?t=2086) [there's we still have](https://youtu.be/q8KF3flIyKs?t=2089) [a a task to do to capture the](https://youtu.be/q8KF3flIyKs?t=2091) [heading title so that's still to be done](https://youtu.be/q8KF3flIyKs?t=2095) [but other than that here i can already](https://youtu.be/q8KF3flIyKs?t=2098) [i can already](https://youtu.be/q8KF3flIyKs?t=2103) [use this element](https://youtu.be/q8KF3flIyKs?t=2105) [with](https://youtu.be/q8KF3flIyKs?t=2107) [element](https://youtu.be/q8KF3flIyKs?t=2110) [height](https://youtu.be/q8KF3flIyKs?t=2112) [and element baseline](https://youtu.be/q8KF3flIyKs?t=2114) [like this and so this actually should](https://youtu.be/q8KF3flIyKs?t=2117) [result](https://youtu.be/q8KF3flIyKs?t=2120) [in a good](https://youtu.be/q8KF3flIyKs?t=2124) [outcome but let me](https://youtu.be/q8KF3flIyKs?t=2125) [do this i'm going to copy these two](https://youtu.be/q8KF3flIyKs?t=2128) [variables](https://youtu.be/q8KF3flIyKs?t=2131) [um](https://youtu.be/q8KF3flIyKs?t=2133) [and we're going to do it like](https://youtu.be/q8KF3flIyKs?t=2136) [this that's the card title](https://youtu.be/q8KF3flIyKs?t=2139) [and this one](https://youtu.be/q8KF3flIyKs?t=2142) [i'm going to](https://youtu.be/q8KF3flIyKs?t=2146) [call the wrap text so this is going to](https://youtu.be/q8KF3flIyKs?t=2148) [be the card title](https://youtu.be/q8KF3flIyKs?t=2152) [wrapped](https://youtu.be/q8KF3flIyKs?t=2155) [and](https://youtu.be/q8KF3flIyKs?t=2158) [this one is going to be](https://youtu.be/q8KF3flIyKs?t=2160) [card title like this](https://youtu.be/q8KF3flIyKs?t=2164) [uh the wrap function doesn't need the uh](https://youtu.be/q8KF3flIyKs?t=2167) [so](https://youtu.be/q8KF3flIyKs?t=2174) [okay so i think i think we're good](https://youtu.be/q8KF3flIyKs?t=2176) [um](https://youtu.be/q8KF3flIyKs?t=2178) [i initiate](https://youtu.be/q8KF3flIyKs?t=2180) [x colitro](https://youtu.be/q8KF3flIyKs?t=2182) [i still have a to do here to get the](https://youtu.be/q8KF3flIyKs?t=2183) [current](https://youtu.be/q8KF3flIyKs?t=2186) [active line and take the](https://youtu.be/q8KF3flIyKs?t=2187) [the heading text from the current active](https://youtu.be/q8KF3flIyKs?t=2190) [line](https://youtu.be/q8KF3flIyKs?t=2192) [but other than that this is](https://youtu.be/q8KF3flIyKs?t=2193) [uh almost good now](https://youtu.be/q8KF3flIyKs?t=2196) [and i'm just going to call this the](https://youtu.be/q8KF3flIyKs?t=2201) [test title](https://youtu.be/q8KF3flIyKs?t=2204) [multi](https://youtu.be/q8KF3flIyKs?t=2207) [line](https://youtu.be/q8KF3flIyKs?t=2208) [just for](https://youtu.be/q8KF3flIyKs?t=2209) [the sake of our](https://youtu.be/q8KF3flIyKs?t=2211) [experiment and then i'm going to open up](https://youtu.be/q8KF3flIyKs?t=2213) [card details there and our clothesline](https://youtu.be/q8KF3flIyKs?t=2218) [and i'm going to be](https://youtu.be/q8KF3flIyKs?t=2222) [just reshuffling these things a bit like](https://youtu.be/q8KF3flIyKs?t=2224) [this](https://youtu.be/q8KF3flIyKs?t=2228) [like this](https://youtu.be/q8KF3flIyKs?t=2230) [and so there's my clothesline](https://youtu.be/q8KF3flIyKs?t=2232) [and so then if i call my](https://youtu.be/q8KF3flIyKs?t=2236) [script and paste it here](https://youtu.be/q8KF3flIyKs?t=2240) [then](https://youtu.be/q8KF3flIyKs?t=2244) [what happened here](https://youtu.be/q8KF3flIyKs?t=2247) [chord title something](https://youtu.be/q8KF3flIyKs?t=2254) [oh](https://youtu.be/q8KF3flIyKs?t=2256) [because i](https://youtu.be/q8KF3flIyKs?t=2258) [i actually included it as text not as a](https://youtu.be/q8KF3flIyKs?t=2260) [variable](https://youtu.be/q8KF3flIyKs?t=2264) [so](https://youtu.be/q8KF3flIyKs?t=2265) [let's just](https://youtu.be/q8KF3flIyKs?t=2267) [try it again](https://youtu.be/q8KF3flIyKs?t=2269) [and then](https://youtu.be/q8KF3flIyKs?t=2271) [we again have a problem and that is](https://youtu.be/q8KF3flIyKs?t=2273) [because the text wrap function](https://youtu.be/q8KF3flIyKs?t=2276) [adds](https://youtu.be/q8KF3flIyKs?t=2280) [new line characters instead of typing a](https://youtu.be/q8KF3flIyKs?t=2281) [new line](https://youtu.be/q8KF3flIyKs?t=2285) [in there so](https://youtu.be/q8KF3flIyKs?t=2286) [okay so the wrap text is a good function](https://youtu.be/q8KF3flIyKs?t=2287) [but it is not exactly](https://youtu.be/q8KF3flIyKs?t=2291) [it doesn't exactly work](https://youtu.be/q8KF3flIyKs?t=2296) [that they we need it so i'm going to add](https://youtu.be/q8KF3flIyKs?t=2299) [a](https://youtu.be/q8KF3flIyKs?t=2303) [uh](https://youtu.be/q8KF3flIyKs?t=2304) [replace there so how does that work](https://youtu.be/q8KF3flIyKs?t=2307) [let's just test this](https://youtu.be/q8KF3flIyKs?t=2311) [so this is my string](https://youtu.be/q8KF3flIyKs?t=2321) [and here i want to](https://youtu.be/q8KF3flIyKs?t=2323) [replace all](https://youtu.be/q8KF3flIyKs?t=2327) [slash n](https://youtu.be/q8KF3flIyKs?t=2331) [i did](https://youtu.be/q8KF3flIyKs?t=2333) [slash slash n like this](https://youtu.be/q8KF3flIyKs?t=2337) [excellent this is what i want so i want](https://youtu.be/q8KF3flIyKs?t=2340) [to add this to the](https://youtu.be/q8KF3flIyKs?t=2343) [end of my](https://youtu.be/q8KF3flIyKs?t=2346) [script here](https://youtu.be/q8KF3flIyKs?t=2348) [like that i'm going to reduce the font](https://youtu.be/q8KF3flIyKs?t=2352) [size again just so](https://youtu.be/q8KF3flIyKs?t=2355) [everything fits so let's try again](https://youtu.be/q8KF3flIyKs?t=2357) [clothesline script](https://youtu.be/q8KF3flIyKs?t=2360) [and yay](https://youtu.be/q8KF3flIyKs?t=2362) [it's almost good it's not](https://youtu.be/q8KF3flIyKs?t=2363) [not perfect but is it not perfect no](https://youtu.be/q8KF3flIyKs?t=2367) [it's actually it's actually](https://youtu.be/q8KF3flIyKs?t=2369) [surprisingly good so that's our](https://youtu.be/q8KF3flIyKs?t=2371) [test title multi-line and there's](https://youtu.be/q8KF3flIyKs?t=2374) [our box we can play around with the](https://youtu.be/q8KF3flIyKs?t=2377) [positioning of the items that could be](https://youtu.be/q8KF3flIyKs?t=2379) [done](https://youtu.be/q8KF3flIyKs?t=2382) [for the time being i think i'm going to](https://youtu.be/q8KF3flIyKs?t=2383) [be](https://youtu.be/q8KF3flIyKs?t=2386) [happy with this and move on with the](https://youtu.be/q8KF3flIyKs?t=2387) [last part](https://youtu.be/q8KF3flIyKs?t=2389) [of this exercise that is to get](https://youtu.be/q8KF3flIyKs?t=2391) [the current line in my script so let me](https://youtu.be/q8KF3flIyKs?t=2394) [just do a bit of](https://youtu.be/q8KF3flIyKs?t=2398) [investigation of how that actually](https://youtu.be/q8KF3flIyKs?t=2399) [happens in](https://youtu.be/q8KF3flIyKs?t=2402) [so](https://youtu.be/q8KF3flIyKs?t=2407) [i](https://youtu.be/q8KF3flIyKs?t=2408) [found the part of the script i was](https://youtu.be/q8KF3flIyKs?t=2410) [looking for](https://youtu.be/q8KF3flIyKs?t=2413) [and that is right here so i get the](https://youtu.be/q8KF3flIyKs?t=2414) [active editor](https://youtu.be/q8KF3flIyKs?t=2417) [with this line then i get the cursor](https://youtu.be/q8KF3flIyKs?t=2419) [then](https://youtu.be/q8KF3flIyKs?t=2422) [i get my active line and from the active](https://youtu.be/q8KF3flIyKs?t=2423) [line](https://youtu.be/q8KF3flIyKs?t=2427) [i want the uh](https://youtu.be/q8KF3flIyKs?t=2428) [i want to get actually the card](https://youtu.be/q8KF3flIyKs?t=2432) [title](https://youtu.be/q8KF3flIyKs?t=2435) [already and](https://youtu.be/q8KF3flIyKs?t=2436) [the chord title](https://youtu.be/q8KF3flIyKs?t=2438) [um so this line](https://youtu.be/q8KF3flIyKs?t=2440) [i expect that i'm going to be](https://youtu.be/q8KF3flIyKs?t=2442) [on the](https://youtu.be/q8KF3flIyKs?t=2445) [line of the header so this line will](https://youtu.be/q8KF3flIyKs?t=2446) [look like something like this it may](https://youtu.be/q8KF3flIyKs?t=2450) [have multiple hashtags a space](https://youtu.be/q8KF3flIyKs?t=2452) [and then the](https://youtu.be/q8KF3flIyKs?t=2455) [the title](https://youtu.be/q8KF3flIyKs?t=2457) [and](https://youtu.be/q8KF3flIyKs?t=2459) [and that can be](https://youtu.be/q8KF3flIyKs?t=2460) [whatever multiple characters](https://youtu.be/q8KF3flIyKs?t=2461) [i](https://youtu.be/q8KF3flIyKs?t=2464) [for and i'm going to use a regular](https://youtu.be/q8KF3flIyKs?t=2465) [expression to extract that text and i](https://youtu.be/q8KF3flIyKs?t=2467) [like to use uh this website uh](https://youtu.be/q8KF3flIyKs?t=2470) [reg expression rexer dot com this is an](https://youtu.be/q8KF3flIyKs?t=2474) [excellent place to](https://youtu.be/q8KF3flIyKs?t=2478) [experiment](https://youtu.be/q8KF3flIyKs?t=2480) [with](https://youtu.be/q8KF3flIyKs?t=2482) [with these](https://youtu.be/q8KF3flIyKs?t=2484) [items so i'm expecting that i'm going to](https://youtu.be/q8KF3flIyKs?t=2485) [have](https://youtu.be/q8KF3flIyKs?t=2488) [actually](https://youtu.be/q8KF3flIyKs?t=2490) [one or more](https://youtu.be/q8KF3flIyKs?t=2492) [plus signs and then i expect to see](https://youtu.be/q8KF3flIyKs?t=2493) [one or more white space characters so](https://youtu.be/q8KF3flIyKs?t=2497) [that's the backslash s is a white space](https://youtu.be/q8KF3flIyKs?t=2500) [and then](https://youtu.be/q8KF3flIyKs?t=2504) [i actually want to get](https://youtu.be/q8KF3flIyKs?t=2505) [everything](https://youtu.be/q8KF3flIyKs?t=2507) [in the line and](https://youtu.be/q8KF3flIyKs?t=2508) [this one i want to place in a capture](https://youtu.be/q8KF3flIyKs?t=2510) [group so this is going to capture me the](https://youtu.be/q8KF3flIyKs?t=2513) [title](https://youtu.be/q8KF3flIyKs?t=2517) [uh](https://youtu.be/q8KF3flIyKs?t=2518) [text as you can see so this is the](https://youtu.be/q8KF3flIyKs?t=2519) [regular expression](https://youtu.be/q8KF3flIyKs?t=2523) [i want](https://youtu.be/q8KF3flIyKs?t=2525) [and](https://youtu.be/q8KF3flIyKs?t=2526) [if i come back](https://youtu.be/q8KF3flIyKs?t=2528) [here i want to](https://youtu.be/q8KF3flIyKs?t=2530) [match](https://youtu.be/q8KF3flIyKs?t=2533) [this and then the question is how does](https://youtu.be/q8KF3flIyKs?t=2538) [a match](https://youtu.be/q8KF3flIyKs?t=2542) [work i i never remember these things](https://youtu.be/q8KF3flIyKs?t=2543) [frankly so we are going to now](https://youtu.be/q8KF3flIyKs?t=2546) [experiment with this in](https://youtu.be/q8KF3flIyKs?t=2549) [the](https://youtu.be/q8KF3flIyKs?t=2552) [console log](https://youtu.be/q8KF3flIyKs?t=2557) [if i ever find my console log so let's](https://youtu.be/q8KF3flIyKs?t=2559) [just create so this is going to be my](https://youtu.be/q8KF3flIyKs?t=2562) [title row](https://youtu.be/q8KF3flIyKs?t=2566) [string](https://youtu.be/q8KF3flIyKs?t=2568) [and then i want to](https://youtu.be/q8KF3flIyKs?t=2569) [match this and it says that something is](https://youtu.be/q8KF3flIyKs?t=2572) [not](https://youtu.be/q8KF3flIyKs?t=2577) [oh because i have two dots here](https://youtu.be/q8KF3flIyKs?t=2578) [excellent and then](https://youtu.be/q8KF3flIyKs?t=2581) [if i match this and i take](https://youtu.be/q8KF3flIyKs?t=2583) [the first element of the list then that](https://youtu.be/q8KF3flIyKs?t=2586) [is](https://youtu.be/q8KF3flIyKs?t=2590) [the value i'm after of course you can](https://youtu.be/q8KF3flIyKs?t=2591) [add all sorts of error handling to the](https://youtu.be/q8KF3flIyKs?t=2596) [code if you want but](https://youtu.be/q8KF3flIyKs?t=2598) [for the time being i'm going to be](https://youtu.be/q8KF3flIyKs?t=2600) [assuming](https://youtu.be/q8KF3flIyKs?t=2602) [uh that people use the code correctly so](https://youtu.be/q8KF3flIyKs?t=2604) [now](https://youtu.be/q8KF3flIyKs?t=2607) [if i come](https://youtu.be/q8KF3flIyKs?t=2609) [here and i say this is a new card](https://youtu.be/q8KF3flIyKs?t=2611) [then i'll](https://youtu.be/q8KF3flIyKs?t=2615) [be i'll have this uh row active i'll](https://youtu.be/q8KF3flIyKs?t=2618) [press](https://youtu.be/q8KF3flIyKs?t=2622) [alt e](https://youtu.be/q8KF3flIyKs?t=2623) [and i start my clothesline script and](https://youtu.be/q8KF3flIyKs?t=2624) [then i come to excoli draw and](https://youtu.be/q8KF3flIyKs?t=2628) [i change to raw mode i](https://youtu.be/q8KF3flIyKs?t=2632) [paste this is my new card and if i](https://youtu.be/q8KF3flIyKs?t=2636) [change back from raw mode then i](https://youtu.be/q8KF3flIyKs?t=2639) [actually should have this link which](https://youtu.be/q8KF3flIyKs?t=2641) [takes me to my new card and there's the](https://youtu.be/q8KF3flIyKs?t=2643) [text](https://youtu.be/q8KF3flIyKs?t=2646) [my new card which is exactly what i](https://youtu.be/q8KF3flIyKs?t=2647) [wanted we can also try it we don't need](https://youtu.be/q8KF3flIyKs?t=2651) [to be an artist that's a longer text i](https://youtu.be/q8KF3flIyKs?t=2653) [click close line script](https://youtu.be/q8KF3flIyKs?t=2656) [it's](https://youtu.be/q8KF3flIyKs?t=2659) [actually copied i'll need to do](https://youtu.be/q8KF3flIyKs?t=2660) [something that i don't want these empty](https://youtu.be/q8KF3flIyKs?t=2662) [lines to be inserted after i press that](https://youtu.be/q8KF3flIyKs?t=2664) [so we'll work that out in a second](https://youtu.be/q8KF3flIyKs?t=2667) [and i come here i paste it](https://youtu.be/q8KF3flIyKs?t=2670) [and i change](https://youtu.be/q8KF3flIyKs?t=2672) [to change back and forth between raw](https://youtu.be/q8KF3flIyKs?t=2674) [mode and normal mode and](https://youtu.be/q8KF3flIyKs?t=2677) [i actually have my text](https://youtu.be/q8KF3flIyKs?t=2680) [neatly here now](https://youtu.be/q8KF3flIyKs?t=2682) [i think this is](https://youtu.be/q8KF3flIyKs?t=2685) [actually](https://youtu.be/q8KF3flIyKs?t=2686) [almost perfect](https://youtu.be/q8KF3flIyKs?t=2689) [uh](https://youtu.be/q8KF3flIyKs?t=2691) [you see that the text is right there](https://youtu.be/q8KF3flIyKs?t=2692) [uh for sure i can move this around there](https://youtu.be/q8KF3flIyKs?t=2695) [are a couple of nice cities missing so](https://youtu.be/q8KF3flIyKs?t=2699) [first of all](https://youtu.be/q8KF3flIyKs?t=2701) [i don't want this empty line but this is](https://youtu.be/q8KF3flIyKs?t=2704) [why the empty line appeared you see i](https://youtu.be/q8KF3flIyKs?t=2706) [had two empty rows](https://youtu.be/q8KF3flIyKs?t=2708) [after my script and that created the](https://youtu.be/q8KF3flIyKs?t=2710) [line so if i run my script now](https://youtu.be/q8KF3flIyKs?t=2713) [then there is no empty line added so](https://youtu.be/q8KF3flIyKs?t=2716) [that's solved it would be great if i get](https://youtu.be/q8KF3flIyKs?t=2719) [got a random color](https://youtu.be/q8KF3flIyKs?t=2722) [so let's just add](https://youtu.be/q8KF3flIyKs?t=2725) [that piece to our script](https://youtu.be/q8KF3flIyKs?t=2726) [the](https://youtu.be/q8KF3flIyKs?t=2729) [my approach to the random color](https://youtu.be/q8KF3flIyKs?t=2730) [is going to be](https://youtu.be/q8KF3flIyKs?t=2733) [one of](https://youtu.be/q8KF3flIyKs?t=2735) [um](https://youtu.be/q8KF3flIyKs?t=2737) [simply creating a list of colors](https://youtu.be/q8KF3flIyKs?t=2738) [from right here from the background](https://youtu.be/q8KF3flIyKs?t=2744) [colors](https://youtu.be/q8KF3flIyKs?t=2746) [i'm just creating an empty](https://youtu.be/q8KF3flIyKs?t=2748) [object here and so i'm going to create a](https://youtu.be/q8KF3flIyKs?t=2751) [list here and i'm going to call this](https://youtu.be/q8KF3flIyKs?t=2754) [const](https://youtu.be/q8KF3flIyKs?t=2756) [colors and this is going to be a list](https://youtu.be/q8KF3flIyKs?t=2758) [and i'm just going to](https://youtu.be/q8KF3flIyKs?t=2763) [place some of the colors here](https://youtu.be/q8KF3flIyKs?t=2765) [and what i'll do is i'm just going to](https://youtu.be/q8KF3flIyKs?t=2767) [choose one of those colors by random](https://youtu.be/q8KF3flIyKs?t=2770) [so i can i can go and choose some of](https://youtu.be/q8KF3flIyKs?t=2775) [these nice colors](https://youtu.be/q8KF3flIyKs?t=2778) [and then](https://youtu.be/q8KF3flIyKs?t=2780) [my clip](https://youtu.be/q8KF3flIyKs?t=2781) [will be](https://youtu.be/q8KF3flIyKs?t=2782) [of a random color](https://youtu.be/q8KF3flIyKs?t=2784) [so i did the editing uh](https://youtu.be/q8KF3flIyKs?t=2791) [what i and that's clip color sorry](https://youtu.be/q8KF3flIyKs?t=2794) [so what i did is](https://youtu.be/q8KF3flIyKs?t=2798) [i](https://youtu.be/q8KF3flIyKs?t=2800) [found the color here i replaced it with](https://youtu.be/q8KF3flIyKs?t=2801) [my clip color](https://youtu.be/q8KF3flIyKs?t=2804) [variable](https://youtu.be/q8KF3flIyKs?t=2806) [like that](https://youtu.be/q8KF3flIyKs?t=2807) [and i](https://youtu.be/q8KF3flIyKs?t=2808) [created this area of colors which i just](https://youtu.be/q8KF3flIyKs?t=2809) [simply went through](https://youtu.be/q8KF3flIyKs?t=2813) [the different colors in](https://youtu.be/q8KF3flIyKs?t=2815) [x color draw that i like](https://youtu.be/q8KF3flIyKs?t=2816) [and i created this area of different](https://youtu.be/q8KF3flIyKs?t=2819) [colors and then i use](https://youtu.be/q8KF3flIyKs?t=2823) [this function](https://youtu.be/q8KF3flIyKs?t=2825) [math random gives me a random number](https://youtu.be/q8KF3flIyKs?t=2827) [between 0 and 1 i multiply it by the](https://youtu.be/q8KF3flIyKs?t=2830) [number of colors](https://youtu.be/q8KF3flIyKs?t=2833) [and i take the floor so the lower](https://youtu.be/q8KF3flIyKs?t=2835) [value of that because](https://youtu.be/q8KF3flIyKs?t=2838) [the](https://youtu.be/q8KF3flIyKs?t=2840) [numbering of the area starts with 0 so](https://youtu.be/q8KF3flIyKs?t=2841) [element 1 is addressed with](https://youtu.be/q8KF3flIyKs?t=2844) [color](https://youtu.be/q8KF3flIyKs?t=2847) [0](https://youtu.be/q8KF3flIyKs?t=2848) [and actually this is not yet good](https://youtu.be/q8KF3flIyKs?t=2849) [because i need to say colors](https://youtu.be/q8KF3flIyKs?t=2852) [and i choose an element from this area](https://youtu.be/q8KF3flIyKs?t=2855) [like this](https://youtu.be/q8KF3flIyKs?t=2859) [and so here's my clip color let's see if](https://youtu.be/q8KF3flIyKs?t=2861) [this](https://youtu.be/q8KF3flIyKs?t=2863) [now works so i'm going to](https://youtu.be/q8KF3flIyKs?t=2864) [delete that from right there](https://youtu.be/q8KF3flIyKs?t=2867) [and let's just again](https://youtu.be/q8KF3flIyKs?t=2870) [run our script](https://youtu.be/q8KF3flIyKs?t=2872) [and](https://youtu.be/q8KF3flIyKs?t=2874) [i'm changing to](https://youtu.be/q8KF3flIyKs?t=2876) [raw mode i'm pasting this](https://youtu.be/q8KF3flIyKs?t=2878) [and i'm going back to preview mode oops](https://youtu.be/q8KF3flIyKs?t=2881) [and](https://youtu.be/q8KF3flIyKs?t=2885) [i](https://youtu.be/q8KF3flIyKs?t=2887) [have my](https://youtu.be/q8KF3flIyKs?t=2888) [nice random clip color we can try again](https://youtu.be/q8KF3flIyKs?t=2891) [i'm going to run my script](https://youtu.be/q8KF3flIyKs?t=2895) [and](https://youtu.be/q8KF3flIyKs?t=2898) [coming back here](https://youtu.be/q8KF3flIyKs?t=2899) [and pasting this and then](https://youtu.be/q8KF3flIyKs?t=2901) [you see oops](https://youtu.be/q8KF3flIyKs?t=2905) [it's always selected uh](https://youtu.be/q8KF3flIyKs?t=2907) [here's my new clip color so i think this](https://youtu.be/q8KF3flIyKs?t=2909) [is good as a demonstration as i said](https://youtu.be/q8KF3flIyKs?t=2914) [there can still be](https://youtu.be/q8KF3flIyKs?t=2919) [or there's still some work to do to](https://youtu.be/q8KF3flIyKs?t=2921) [position the text](https://youtu.be/q8KF3flIyKs?t=2924) [but i'm already happy with this and](https://youtu.be/q8KF3flIyKs?t=2926) [frankly if i need to do this with some](https://youtu.be/q8KF3flIyKs?t=2929) [of the text](https://youtu.be/q8KF3flIyKs?t=2931) [i can live with that but](https://youtu.be/q8KF3flIyKs?t=2933) [this is also](https://youtu.be/q8KF3flIyKs?t=2935) [following the same logic](https://youtu.be/q8KF3flIyKs?t=2937) [this can be corrected finally i just](https://youtu.be/q8KF3flIyKs?t=2939) [want to](https://youtu.be/q8KF3flIyKs?t=2941) [go here and](https://youtu.be/q8KF3flIyKs?t=2942) [and implement the](https://youtu.be/q8KF3flIyKs?t=2946) [hotkey for or](https://youtu.be/q8KF3flIyKs?t=2948) [hotkey](https://youtu.be/q8KF3flIyKs?t=2953) [for templates plugin let me install](https://youtu.be/q8KF3flIyKs?t=2954) [hotkey for templates](https://youtu.be/q8KF3flIyKs?t=2959) [that's great let me enable it and then](https://youtu.be/q8KF3flIyKs?t=2961) [let me go to](https://youtu.be/q8KF3flIyKs?t=2963) [settings](https://youtu.be/q8KF3flIyKs?t=2966) [what i want to do is i want to add a](https://youtu.be/q8KF3flIyKs?t=2967) [shortcut key to my new template so](https://youtu.be/q8KF3flIyKs?t=2970) [hotkey for templates and here i'm going](https://youtu.be/q8KF3flIyKs?t=2972) [to](https://youtu.be/q8KF3flIyKs?t=2975) [look for my clothesline script](https://youtu.be/q8KF3flIyKs?t=2977) [and](https://youtu.be/q8KF3flIyKs?t=2980) [i activated this as i want the hotkey](https://youtu.be/q8KF3flIyKs?t=2982) [for that and i come up here](https://youtu.be/q8KF3flIyKs?t=2985) [and i](https://youtu.be/q8KF3flIyKs?t=2987) [look for my](https://youtu.be/q8KF3flIyKs?t=2989) [templater](https://youtu.be/q8KF3flIyKs?t=2993) [clothesline script and here i can add my](https://youtu.be/q8KF3flIyKs?t=2996) [hotkey which is going to be](https://youtu.be/q8KF3flIyKs?t=2999) [a](https://youtu.be/q8KF3flIyKs?t=3002) [i don't know a control alt c](https://youtu.be/q8KF3flIyKs?t=3003) [is excellent that's going to be my](https://youtu.be/q8KF3flIyKs?t=3007) [shortcut for a new card](https://youtu.be/q8KF3flIyKs?t=3010) [and so now if i come up here](https://youtu.be/q8KF3flIyKs?t=3012) [introducing sketchnoting i'm on the](https://youtu.be/q8KF3flIyKs?t=3015) [active line](https://youtu.be/q8KF3flIyKs?t=3018) [i press ctrl alt c](https://youtu.be/q8KF3flIyKs?t=3019) [i come here](https://youtu.be/q8KF3flIyKs?t=3022) [and i go ahead and](https://youtu.be/q8KF3flIyKs?t=3023) [paste](https://youtu.be/q8KF3flIyKs?t=3026) [and with that](https://youtu.be/q8KF3flIyKs?t=3028) [i have](https://youtu.be/q8KF3flIyKs?t=3029) [i need to get used to](https://youtu.be/q8KF3flIyKs?t=3032) [clicking the right place i](https://youtu.be/q8KF3flIyKs?t=3035) [have inserted my](https://youtu.be/q8KF3flIyKs?t=3037) [card here](https://youtu.be/q8KF3flIyKs?t=3039) [i wonder what happens if i](https://youtu.be/q8KF3flIyKs?t=3042) [paste like this then i need to double](https://youtu.be/q8KF3flIyKs?t=3045) [click](https://youtu.be/q8KF3flIyKs?t=3048) [up here to](https://youtu.be/q8KF3flIyKs?t=3049) [get it](https://youtu.be/q8KF3flIyKs?t=3050) [properly positioned](https://youtu.be/q8KF3flIyKs?t=3051) [that's still a bit of a drag but i think](https://youtu.be/q8KF3flIyKs?t=3055) [overall](https://youtu.be/q8KF3flIyKs?t=3058) [i was able to](https://youtu.be/q8KF3flIyKs?t=3059) [improve the speed of my](https://youtu.be/q8KF3flIyKs?t=3062) [workflow](https://youtu.be/q8KF3flIyKs?t=3064) [significantly so now i can close my](https://youtu.be/q8KF3flIyKs?t=3065) [script i no longer need it i can move my](https://youtu.be/q8KF3flIyKs?t=3070) [drawing to the right hand side](https://youtu.be/q8KF3flIyKs?t=3073) [and then](https://youtu.be/q8KF3flIyKs?t=3076) [i can](https://youtu.be/q8KF3flIyKs?t=3077) [work on my](https://youtu.be/q8KF3flIyKs?t=3078) [cards here and whenever](https://youtu.be/q8KF3flIyKs?t=3081) [a new card](https://youtu.be/q8KF3flIyKs?t=3084) [occurs to me so](https://youtu.be/q8KF3flIyKs?t=3085) [this is a](https://youtu.be/q8KF3flIyKs?t=3087) [brand new card](https://youtu.be/q8KF3flIyKs?t=3089) [and](https://youtu.be/q8KF3flIyKs?t=3091) [here is the](https://youtu.be/q8KF3flIyKs?t=3092) [description](https://youtu.be/q8KF3flIyKs?t=3094) [something like that i](https://youtu.be/q8KF3flIyKs?t=3097) [uh stand on the heading line i press](https://youtu.be/q8KF3flIyKs?t=3100) [ctrl alt c](https://youtu.be/q8KF3flIyKs?t=3103) [and i come here and paste](https://youtu.be/q8KF3flIyKs?t=3106) [and i switch between the two views](https://youtu.be/q8KF3flIyKs?t=3108) [then i actually have my new card here by](https://youtu.be/q8KF3flIyKs?t=3112) [the way](https://youtu.be/q8KF3flIyKs?t=3117) [i have](https://youtu.be/q8KF3flIyKs?t=3119) [a shortcut](https://youtu.be/q8KF3flIyKs?t=3120) [for this i need to go to](https://youtu.be/q8KF3flIyKs?t=3121) [my hotkeys look for x call it raw](https://youtu.be/q8KF3flIyKs?t=3124) [and i should have a shortcut](https://youtu.be/q8KF3flIyKs?t=3129) [here](https://youtu.be/q8KF3flIyKs?t=3133) [toggle between collider and markdown no](https://youtu.be/q8KF3flIyKs?t=3136) [that's not the lock unlock control shift](https://youtu.be/q8KF3flIyKs?t=3139) [e so then i'm here if i press ctrl shift](https://youtu.be/q8KF3flIyKs?t=3142) [e](https://youtu.be/q8KF3flIyKs?t=3146) [then that switches between the two modes](https://youtu.be/q8KF3flIyKs?t=3148) [so that's actually](https://youtu.be/q8KF3flIyKs?t=3150) [quite handy because i can](https://youtu.be/q8KF3flIyKs?t=3152) [paste my new card and if](https://youtu.be/q8KF3flIyKs?t=3156) [i want to](https://youtu.be/q8KF3flIyKs?t=3159) [transform this into](https://youtu.be/q8KF3flIyKs?t=3161) [a nicely rendered format i](https://youtu.be/q8KF3flIyKs?t=3163) [press ctrl shift e twice](https://youtu.be/q8KF3flIyKs?t=3166) [and with that i have my next card](https://youtu.be/q8KF3flIyKs?t=3169) [inserted](https://youtu.be/q8KF3flIyKs?t=3173) [again](https://youtu.be/q8KF3flIyKs?t=3174) [i think](https://youtu.be/q8KF3flIyKs?t=3175) [the](https://youtu.be/q8KF3flIyKs?t=3177) [process is](https://youtu.be/q8KF3flIyKs?t=3178) [much better than it was before](https://youtu.be/q8KF3flIyKs?t=3181) [yes it is not yet](https://youtu.be/q8KF3flIyKs?t=3183) [fully perfect](https://youtu.be/q8KF3flIyKs?t=3185) [but i think](https://youtu.be/q8KF3flIyKs?t=3186) [uh overall](https://youtu.be/q8KF3flIyKs?t=3188) [this text positioning](https://youtu.be/q8KF3flIyKs?t=3190) [can be done in a couple of](https://youtu.be/q8KF3flIyKs?t=3192) [minutes in terms of looking into](https://youtu.be/q8KF3flIyKs?t=3195) [how it works and](https://youtu.be/q8KF3flIyKs?t=3198) [and that that is going to](https://youtu.be/q8KF3flIyKs?t=3200) [make this](https://youtu.be/q8KF3flIyKs?t=3204) [complete](https://youtu.be/q8KF3flIyKs?t=3206) [so i did the additional editing](https://youtu.be/q8KF3flIyKs?t=3208) [the end result looks like this so if i](https://youtu.be/q8KF3flIyKs?t=3212) [copy and paste my](https://youtu.be/q8KF3flIyKs?t=3215) [element here and just do this cycle of](https://youtu.be/q8KF3flIyKs?t=3218) [preview](https://youtu.be/q8KF3flIyKs?t=3222) [and or raw and preview then you can see](https://youtu.be/q8KF3flIyKs?t=3223) [that now the text is placed](https://youtu.be/q8KF3flIyKs?t=3227) [well as well as](https://youtu.be/q8KF3flIyKs?t=3229) [the link is neatly in the bottom right](https://youtu.be/q8KF3flIyKs?t=3232) [corner uh what i did i did a couple of](https://youtu.be/q8KF3flIyKs?t=3235) [things to clean up the text so i did](https://youtu.be/q8KF3flIyKs?t=3238) [some](https://youtu.be/q8KF3flIyKs?t=3241) [minor tweaks i actually set](https://youtu.be/q8KF3flIyKs?t=3242) [in the beginning for xculitra automate i](https://youtu.be/q8KF3flIyKs?t=3245) [set this style](https://youtu.be/q8KF3flIyKs?t=3248) [to be](https://youtu.be/q8KF3flIyKs?t=3250) [center aligned and i selected](https://youtu.be/q8KF3flIyKs?t=3251) [font family one](https://youtu.be/q8KF3flIyKs?t=3255) [in away font family one](https://youtu.be/q8KF3flIyKs?t=3257) [which is our virgil](https://youtu.be/q8KF3flIyKs?t=3260) [font](https://youtu.be/q8KF3flIyKs?t=3262) [is the default so this is not so](https://youtu.be/q8KF3flIyKs?t=3263) [important](https://youtu.be/q8KF3flIyKs?t=3265) [i did a change here um i removed you](https://youtu.be/q8KF3flIyKs?t=3267) [remember](https://youtu.be/q8KF3flIyKs?t=3270) [we had the](https://youtu.be/q8KF3flIyKs?t=3271) [match or replace all](https://youtu.be/q8KF3flIyKs?t=3273) [element here that moved down to the](https://youtu.be/q8KF3flIyKs?t=3276) [script right here](https://youtu.be/q8KF3flIyKs?t=3279) [and what i did is i actually recognized](https://youtu.be/q8KF3flIyKs?t=3281) [that when i was adding text i was adding](https://youtu.be/q8KF3flIyKs?t=3285) [the wrong text and that](https://youtu.be/q8KF3flIyKs?t=3289) [impacted the sizing of the text because](https://youtu.be/q8KF3flIyKs?t=3292) [i was adding not the multi-line text but](https://youtu.be/q8KF3flIyKs?t=3295) [already the escaped](https://youtu.be/q8KF3flIyKs?t=3299) [text that you can find here so](https://youtu.be/q8KF3flIyKs?t=3301) [anyway this uh resolved this now when](https://youtu.be/q8KF3flIyKs?t=3304) [i'm calling at text i'm](https://youtu.be/q8KF3flIyKs?t=3307) [sending it](https://youtu.be/q8KF3flIyKs?t=3309) [the proper multi-line uh](https://youtu.be/q8KF3flIyKs?t=3311) [text](https://youtu.be/q8KF3flIyKs?t=3314) [i also](https://youtu.be/q8KF3flIyKs?t=3315) [went ahead and](https://youtu.be/q8KF3flIyKs?t=3316) [cleaned up a bit the sizing of the](https://youtu.be/q8KF3flIyKs?t=3318) [element so that's a bit of a tedious job](https://youtu.be/q8KF3flIyKs?t=3320) [there are two rectangles here you can](https://youtu.be/q8KF3flIyKs?t=3324) [see this is rectangle one and then](https://youtu.be/q8KF3flIyKs?t=3326) [further down](https://youtu.be/q8KF3flIyKs?t=3330) [uh here is a rectangle two](https://youtu.be/q8KF3flIyKs?t=3331) [rectangle one](https://youtu.be/q8KF3flIyKs?t=3334) [is the big rectangle rectangle two is](https://youtu.be/q8KF3flIyKs?t=3336) [the rectangle for the clip](https://youtu.be/q8KF3flIyKs?t=3339) [and what i did is i went ahead and](https://youtu.be/q8KF3flIyKs?t=3342) [just](https://youtu.be/q8KF3flIyKs?t=3345) [cleaned up these numbers so](https://youtu.be/q8KF3flIyKs?t=3347) [this was 66.45](https://youtu.be/q8KF3flIyKs?t=3349) [something and this was](https://youtu.be/q8KF3flIyKs?t=3352) [470. something as well this was 70 so i](https://youtu.be/q8KF3flIyKs?t=3354) [actually rounded these numbers the width](https://youtu.be/q8KF3flIyKs?t=3359) [the height](https://youtu.be/q8KF3flIyKs?t=3362) [the](https://youtu.be/q8KF3flIyKs?t=3364) [x and the y coordinates of the main](https://youtu.be/q8KF3flIyKs?t=3365) [rectangle](https://youtu.be/q8KF3flIyKs?t=3369) [i did the same with the second rectangle](https://youtu.be/q8KF3flIyKs?t=3370) [making sure that](https://youtu.be/q8KF3flIyKs?t=3373) [the proper bit](https://youtu.be/q8KF3flIyKs?t=3374) [uh so the the width of this is now the](https://youtu.be/q8KF3flIyKs?t=3376) [same as the bit of](https://youtu.be/q8KF3flIyKs?t=3379) [the other so just to make sure that i](https://youtu.be/q8KF3flIyKs?t=3381) [have a proper line at the top](https://youtu.be/q8KF3flIyKs?t=3384) [of the clip](https://youtu.be/q8KF3flIyKs?t=3387) [i also](https://youtu.be/q8KF3flIyKs?t=3388) [went ahead and](https://youtu.be/q8KF3flIyKs?t=3390) [just played with the positioning of](https://youtu.be/q8KF3flIyKs?t=3392) [my](https://youtu.be/q8KF3flIyKs?t=3395) [link here so this quotation mark in the](https://youtu.be/q8KF3flIyKs?t=3397) [bottom](https://youtu.be/q8KF3flIyKs?t=3400) [and](https://youtu.be/q8KF3flIyKs?t=3401) [what i so i was just so this was pure](https://youtu.be/q8KF3flIyKs?t=3402) [playing](https://youtu.be/q8KF3flIyKs?t=3405) [with numbers i experimented until i](https://youtu.be/q8KF3flIyKs?t=3406) [found that 132 and minus 417](https://youtu.be/q8KF3flIyKs?t=3409) [places my](https://youtu.be/q8KF3flIyKs?t=3413) [link for details in the bottom right](https://youtu.be/q8KF3flIyKs?t=3415) [corner you see previously it was a bit](https://youtu.be/q8KF3flIyKs?t=3417) [further up](https://youtu.be/q8KF3flIyKs?t=3420) [and i also](https://youtu.be/q8KF3flIyKs?t=3421) [added this variable here to position the](https://youtu.be/q8KF3flIyKs?t=3424) [x-coordinate of the text so this is](https://youtu.be/q8KF3flIyKs?t=3428) [our](https://youtu.be/q8KF3flIyKs?t=3433) [text itself](https://youtu.be/q8KF3flIyKs?t=3434) [that we are displaying the multi-line](https://youtu.be/q8KF3flIyKs?t=3436) [text and the](https://youtu.be/q8KF3flIyKs?t=3438) [and this i calculate such that i take](https://youtu.be/q8KF3flIyKs?t=3440) [the x-coordinate of the](https://youtu.be/q8KF3flIyKs?t=3444) [card](https://youtu.be/q8KF3flIyKs?t=3447) [and then i take the width of the card](https://youtu.be/q8KF3flIyKs?t=3448) [that's 77](https://youtu.be/q8KF3flIyKs?t=3451) [i subtract the width of the text and](https://youtu.be/q8KF3flIyKs?t=3453) [divide that by two](https://youtu.be/q8KF3flIyKs?t=3457) [and that's how i decide](https://youtu.be/q8KF3flIyKs?t=3459) [where to place uh my text and as you](https://youtu.be/q8KF3flIyKs?t=3462) [could see the end result](https://youtu.be/q8KF3flIyKs?t=3466) [was quite nice it it placed the text](https://youtu.be/q8KF3flIyKs?t=3469) [right where i wanted to and now this](https://youtu.be/q8KF3flIyKs?t=3473) [whole](https://youtu.be/q8KF3flIyKs?t=3476) [setup is i think working](https://youtu.be/q8KF3flIyKs?t=3477) [quite nicely](https://youtu.be/q8KF3flIyKs?t=3480) [so i hope you found this](https://youtu.be/q8KF3flIyKs?t=3481) [interesting and you got a bit of insight](https://youtu.be/q8KF3flIyKs?t=3484) [into](https://youtu.be/q8KF3flIyKs?t=3487) [how](https://youtu.be/q8KF3flIyKs?t=3489) [ex-collateral automate works](https://youtu.be/q8KF3flIyKs?t=3490) [you got a bit of insight into the](https://youtu.be/q8KF3flIyKs?t=3492) [clothesline method as well as](https://youtu.be/q8KF3flIyKs?t=3494) [hopefully all together](https://youtu.be/q8KF3flIyKs?t=3498) [this resulted in a script that you](https://youtu.be/q8KF3flIyKs?t=3501) [can reuse as well in your own workflow](https://youtu.be/q8KF3flIyKs?t=3504) [and will help your visual problem for](https://youtu.be/q8KF3flIyKs?t=3508) [solving visual thinking thank you](https://youtu.be/q8KF3flIyKs?t=3511)