protected void createActions() {
		actionFind = new ActionBuilder("Find", plugin.getName())
				.menuIcon(new GIcon("icon.search"))
				.menuPath("Find")
				.menuGroup("Find")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_F,
					InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "find"))
				.onAction(this::activatedFind)
				.buildAndInstallLocal(this);
		actionFindNext = new ActionBuilder("Find Next", plugin.getName())
				.menuPath("Find Next")
				.menuGroup("Find")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_H,
					InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "find_next"))
				.enabledWhen(this::isEnabledFindStep)
				.onAction(this::activatedFindNext)
				.buildAndInstallLocal(this);
		actionFindPrevious = new ActionBuilder("Find Previous", plugin.getName())
				.menuPath("Find Previous")
				.menuGroup("Find")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_G,
					InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "find_previous"))
				.enabledWhen(this::isEnabledFindStep)
				.onAction(this::activatedFindPrevious)
				.buildAndInstallLocal(this);
		actionSelectAll = new ActionBuilder("Select All", plugin.getName())
				.menuPath("Select All")
				.menuGroup("Select")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_A,
					InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "select_all"))
				.onAction(this::activatedSelectAll)
				.buildAndInstallLocal(this);
		actionIncreaseSize = new ActionBuilder("Increase Font Size", plugin.getName())
				.menuPath("Increase Font Size")
				.menuGroup("View")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_EQUALS,
					InputEvent.CTRL_DOWN_MASK | InputEvent.SHIFT_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "increase_font_size"))
				.onAction(this::activatedIncreaseFontSize)
				.buildAndInstallLocal(this);
		actionDecreaseSize = new ActionBuilder("Decrease Font Size", plugin.getName())
				.menuPath("Decrease Font Size")
				.menuGroup("View")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_MINUS, InputEvent.CTRL_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "decrease_font_size"))
				.onAction(this::activatedDecreaseFontSize)
				.buildAndInstallLocal(this);
		actionResetSize = new ActionBuilder("Reset Font Size", plugin.getName())
				.menuPath("Reset Font Size")
				.menuGroup("View")
				.keyBinding(KeyStroke.getKeyStroke(KeyEvent.VK_0, InputEvent.CTRL_DOWN_MASK))
				.helpLocation(new HelpLocation(helpPlugin.getName(), "decrease_font_size"))
				.onAction(this::activatedResetFontSize)
				.buildAndInstallLocal(this);
	}
A window holding a VT100 terminal emulator.

<p>
This also provides UI actions for searching the terminal's contents.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/terminal/TerminalProvider.java