Paste text from a list of items?

In this wast app its easy to miss functions. Ive been doing a lot of new automations to simplify things in my business.

I have so many different email addresses now for different purposes so it would be nice with a menu to select mail and paste.

Earlier i have done these lists with floating menu, applescript and CSV, when it comes to larger lists with parts for example.

As for now is the only way to ad several instances of "paste custom text" the only option? Would be a really nice feature to be able to make a list where you can select what should be pasted. Could also be used as a list of replies to emails.

In short, whats the best way to use BTT for opening a list of text items that can be selected? Some lists are simple like just a bunch of different emails, some lists are more complex. I googled around, but not many people seems to use lists like I do. :slight_smile:

This is how it looks with csv. The limitation is that I cant choose the amount of items and have to CMD click for several items.

Importing a CSV into BTT would definitely need some scripting, that is not possible out of the box.

For creating a selection menu, the easiest option might be the "Show Custom Context Menu (New)" action, but there you will need to add many "Paste Text" actions to achieve what you want.

Of course you can also create fancy floating menus with such functionality, here a little example preset (it shows the menu when pressing ctrl+opt+cmd+c)
menu example.bttpreset (195.6 KB)

Yes. I did try earlier to experiment with floating menu. But landed in that its much easier to edit a CSV.

Maybe something for future updates? To be able to make a list of different paste texts. Would be really handy to use for text replies for example. "Paste custom text - list)"

But then I know that there isnt any better way to do it for now. You added so many fantastic functions that it isnt easy to keep track of it all, or to know the best way to use them.

When I get some time I'll post an example of how to convert such a csv to a floating menu in BTT. This should be relatively simple!
Maybe you can post an example CSV that should be converted

I do already have that, as shown in my first screenshot. Would be nice if it could be implemented directly into a floating menu. (Not allowed to upload CSV here though)
BTW, I have zero programming knowledge, just been struggling with ChatGPT. :slight_smile:

csvmenu.bttpreset (43.8 KB)

set csvFilePath to "/Library/Mobile Documents/com~apple~CloudDocs/Databases/csv/delar.csv"

set textItems to {}

-- Attempt to read the CSV file

try

-- Read the CSV file with UTF-8 encoding

set fileDescriptor to (open for access csvFilePath)

set fileContents to (read fileDescriptor for (get eof fileDescriptor) as «class utf8»)

close access fileDescriptor

-- Split the file contents into rows

set csvRows to paragraphs of fileContents

-- Extract text items from CSV rows

repeat with aRow in csvRows

set end of textItems to contents of aRow

end repeat

on error errMsg

display dialog "Error reading file: " & errMsg buttons {"OK"} default button "OK" with icon stop

return

end try

-- Display the options

if (count of textItems) > 0 then

set selectedItem to choose from list textItems with prompt "Select text items to paste:" with multiple selections allowed

if selectedItem is not false then

set AppleScript's text item delimiters to linefeed

set selectedItemsText to selectedItem as text

set the clipboard to selectedItemsText

end if

else

display dialog "No text items found in the CSV file." buttons {"OK"} default button "OK" with icon note giving up after 10

end if