I have a question. I am not good at English and I do not know how to code. Can you tell me why you are using the "Named Trigger" feature? This feature can reduce the drain on the battery? I am curious about the purpose of this feature. I would appreciate your reply.
They didn't need to be named triggers, but I made them named triggers so that it's easy to trigger their actions from anywhere - like the presets, for example
this lets you set up GC-BTT actions without needing to know how to code or how to hook up the buttons etc, you just need to know how to edit the custom preset. So, for example, you can set a Touch Bar button to trigger the named trigger "Show Microphone Mute" and that button will make the Microphone Mute menu bar item appear! You can see the full list of available commands in the "Other" tab under the "Setting Triggers" heading.
Almost everything you want
I'm only missing a preset that changes sound output device - I use "Display Audio" (from Thunderbolt Display) in my office and multiple times a day I need to fiddle in the sound drop down to switch it back from "Internal Speakers" that defaults in MBP.
I've downloaded some subpar Apple script but it only switches in one direction and does not run in the background like your Airpods BT switcher.
I'd love to have the same for the external/internal speaker output. 
I'm in the same boat, actually. I wish I could tell macOS to default to external USB speakers as soon as they're connected.
I'm not sure there's a way to do this without opening System Preferences. I'll look into it, maybe I can come up with a more elegant solution or a way to auto-switch to external speakers.
EDIT: I think I've tried Rogue Amoeba's SoundSource before, but for different reasons, but apparently it can do this kind of thing: https://rogueamoeba.com/soundsource/ never mind it doesn't , haha.
Hi GoldenChaos,
I'm using BTT for a while but never thought that costumization of the touchbar was that advanced! Just today I've came up your presets.. thumbs-up 
I do have two question (popped-up while customizing the preset):
- The icons used are created by you? Or can these (and more) be downloaded from somewhere?
- What happens if I update to a newer version? Do I need to re-do my customization or will this stay as is??
Tnx!
- Some icons are made by me, most are Apple's official icons. In any case, you can get any of them by right clicking on the icon and selecting "Save icon as png"
- Yes, you'll need to re-do any customizations when you upgrade. I recommend checking out the new preset functionality if you want to create a config that can save between upgrades - it's a little more involved, but so totally worth it. I've also tried to implement as many common configuration tweaks into the GC-BTT Settings menu as possible so that it's quick to get back to your favorite setup.
Here's the code I use - again, it's one directional but I'm sure there is a way of tweaking this up to work better.
tell application "System Preferences" reveal anchor "output" of pane id "com.apple.preference.sound" end tell tell application "System Events" to tell process "System Preferences" tell table 1 of scroll area 1 of tab group 1 of window 1 select (row 1 where value of text field 1 is "Display Audio") end tell end tell quit application "System Preferences"
The "System Preferences" is not elegant but I think it could even be the same as you've done with the Airpods via BT drop-down menu.
- It looks like the Sound Device drop-down works on the same principals, right? (sorry, I'm not a developer so I'm talking a bit out of my a**).
this version very good ! play/pause, previous and Next buttons !!!!!
Sadly, it's actually a system limitation. The sound menu is not exposed in the same way the Bluetooth menu is - and you can't tell it to click any of the menu items. I haven't found a way around this that doesn't involve launching system preferences (which your script does), so until I figure out how to access the sound menu I can't include this feature 
I'm motivated though, will continue searching.
For me, Lightroom is problematic with that button. I have Lr maximised (i.e. on its own screen), then I review images full screen (F key in Lr). Esc kills the full-screen image function, but if I don't hold the button long enough, Lr itself gets restored to a window on the home screen. I can use the F key again to kill the fullscreen image but, over the years, I've got into the habit of using Esc.
My personal preference would be for the button to be Esc on tap, max/min on long press. That just feels more natural to me.
This is very helpful. I'm going to swap the long-press and normal behaviors for myself and see how I feel about it, I have a feeling I'm going to like it a lot more. Thank you so much for this feedback, I think this will finally make the combo esc a top-tier key!
I'm going to also play around with some other designs because why not, and also there's a new function in BTT for getting the currently active app so maybe I can finally change the icon when an app is fullscreen?
EDIT: Thoughts on using this as the icon for the combo button instead of the fullscreen arrows? Not sure if I like this yet but I don't hate it. Thinking of showing the "leave fullscreen" arrows if you're in fullscreen, but I know some apps override this behavior. Need to use it a bit more... my only concern with using the "enter fullscreen" arrows as the primary icon is that it does not actually perform that action on tap. But in fullscreen mode it does (most of the time).
That's a Apple bug, the system's "Now Playing" widget in the Notification Center behaves the same on the affected systems (it is working fine for me on Mojave though)
Aww, okay, Thank you
️ Final version of Mojave should come out in the next month or so, right?
At least I'm glad I didn't mess something up and it's just an Apple bug 
@Andreas_Hegenberg for whenever you wake up, is there a way for me to hide parts of the Now Playing text output conditionally? I include an em dash between {title} and {artist}, but I don't want the dash to show up if there is no artist.
I am having an issue with app specific customizations. I want to completely disable BTT for Logic and Final Cut, but when pressing modifiers ctrl opt etc. the BTT show up instead of the app native settings.
I just found that color of background of that snippet doesn't' match with "default" touchbar background color — osx default is 363636, here is 4b4b4b (same for BTT esc default key)
also vertical align of text of button isn't correct — it's easy to compare by pressing fn button (system esc should be enabled in BTT config)
also font looks bolder than default — any ideas how to fix it?
You should be able to change the color, the rest is however not fixable. BTT doesn't use the system buttons because of various limitations.
Unfortunately I haven't found a way to achieve the exact same font appearance as on the original buttons.
I'll check why it's not using the default background though!
//edti: The padding in your example is like that because there are only "small" letters in it. Check for example a button with the text "test" instead.
I still haven't figured out how to fix my "Now Playing" widget to work with anything in Safari. Instead of displaying the title of the video it's showing the link with the blob: prefix in front of it. Do you guys have any idea how should I fix this?

