Community
    • Login

    useless macro?

    Scheduled Pinned Locked Moved General Discussion
    4 Posts 4 Posters 1.7k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Angelica BartoloniA
      Angelica Bartoloni
      last edited by

      I would like the macro to memorize an action and not just copy paste.
      I need a function that is on the list of inserted photos,
      takes the title tag and alt from the photo name.

      I would like it to memorize the action and to repeat it on the selected lines
      if I have a list of 10 different photos, the title and alt tags will be different

      how can I do? I have thousands of photos upload with the plugin “ImgTag”
      but there is no title field and the alt field is blank

      please, someone help me quickly!
      thank you soo much!

      1 Reply Last reply Reply Quote 0
      • G WarnerG
        G Warner
        last edited by

        I am no coder, can barely program, but I am sure what you need is outside the realm of a text editor. I am sure there are photo tag editors available just like there are editors for mp3 tags.

        1 Reply Last reply Reply Quote 0
        • Budi KusasiB
          Budi Kusasi
          last edited by

          If OP (original poster) explain what she need more clearly and detail in better correct English and how the condition and environment she is on now that is supporting, it’d be more likely many more people would give useful help. Thanks in advance

          1 Reply Last reply Reply Quote 0
          • PeterJonesP
            PeterJones
            last edited by PeterJones

            @Angelica-Bartoloni isn’t overly clear (but maybe English isn’t her native language), but I read the description of the ImgTag plugin in the Plugin Manager: it appears to allow you to use a File|Open-style dialog to select images from your drive, and then insert the appropriate <IMG> tag in the HTML document you are editing in Notepad++.

            Given that description, then it could probably be automated inside NPP… but probably not with the macro-recording tool.

            The ways that I can think of:

            1. Use the ImgTag plugin as normal. Then use a regex-based search-and-replace to update the title and alt fields. If the OP gave us the example output HTML from ImgTag, the regex experts could easily customize to fit the OP needs.

            2. Use PythonScript to automate the ImgTag plugin, and edit the output as it’s going. (I don’t think this really has any benefit over #1)

            3. Use PythonScript to completely replace the ImgTag functionality: have the .py call a File|Open-style dialog itself, and then generate the HTML <img> tags, with all the fields that are desired. (For simplest case, this might work; but if OP is relying on getting/setting the width and height tags via ImgTag as well, then it would probably require accessing other libraries through the .py, at which point, #1 is probably simpler again.)

            I think probably #1 is the easiest.

            Assuming ImgTag would return the following if you selected a.png, b.png, and c.png: (and assuming that “alt field is blank” means there is the alt attribute but no string inserted, and that “no title field” means that there isn’t a title attribute at all):

            <img src="./a.png" width=640 height=480 alt="">
            <img src="./b.png" width=1280 height=720 alt="">
            <img src="./c.png" width=1920 height=1080 alt="">
            

            And assuming @Angelica-Bartoloni wants

            <img src="./a.png" width=640 height=480 alt="./a.png" title="./a.png">
            <img src="./b.png" width=1280 height=720 alt="./b.png" title="./b.png">
            <img src="./c.png" width=1920 height=1080 alt="./c.png" title="./c.png">
            

            Then I would use something like

            • Find What = (?-s)src="([^"]*)"([^>]*)alt="">
            • Replace With = src="$1"$2alt="$1" title="$1">

            If the order of attributes is different, or ImgTag uses different quote characters (single quotes, for example), or if it uses xhtml-style <img ... />, then the regular expressions could be changed to accommodate.

            Angelica, please give us actual example output from ImgTag, and the exact desired final result: we can tweak the regex as necessary. Try to think of edge cases: do any of your filenames have quotes or apostrophes embedded, such as Mr. D'Angelo's "favorite" picture.png, or any other special characters that you think might influence things? Does ImgTag always output attributes in the same order? Does it include the alt="", or alt='', or no alt at all; similar for title? What other helpful information can you give us? (The more details you give of “what you have” vs “what you want”, the easier it is for us to help you find a solution.)

            <edit>: also, we need to know if you have other <IMG> tags already in the document. If so, then before doing the search-and-replace, you’ll have to select just the ImgTag-based <IMG> tags, and use the ☑ In Selection option, to avoid messing up other images.</edit>

            1 Reply Last reply Reply Quote 2
            • First post
              Last post
            The Community of users of the Notepad++ text editor.
            Powered by NodeBB | Contributors