Change Session’s Profile¶
This script changes the current session’s profile to the profile named “Default”. It demonstrates getting the list of profiles and changing a session’s profile.
Note that if the session is divorced from its underlying profile (such as by making a change in the Session > Edit Session panel) then those changes will not be affected by this script. In order to override them, you should convert the partial profile partial into a full profile by calling await partial.async_get_full_profile() and passing that to async_set_profile.
#!/usr/bin/env python3.7 import iterm2 async def main(connection): app = await iterm2.async_get_app(connection) # Query for the list of profiles so we can search by name. This returns a # subset of the full profiles so it's fast. partialProfiles = await iterm2.PartialProfile.async_query(connection) # Iterate over each partial profile for partial in partialProfiles: if partial.name == "Default": # This is the one we're looking for. Change the current session's # profile. full = await partial.async_get_full_profile() await app.current_terminal_window.current_tab.current_session.async_set_profile(full) return iterm2.run_until_complete(main)