mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-07-15 00:06:09 +03:00
keybind: add copy_title action
Fixes #7829 This will copy the terminal title to the clipboard. If the terminal title is not set it has no effect.
This commit is contained in:
@ -4443,6 +4443,17 @@ pub fn performBindingAction(self: *Surface, action: input.Binding.Action) !bool
|
|||||||
return false;
|
return false;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
.copy_title => {
|
||||||
|
const title = self.rt_surface.getTitle() orelse return false;
|
||||||
|
|
||||||
|
self.rt_surface.setClipboardString(title, .standard, false) catch |err| {
|
||||||
|
log.err("error copying title to clipboard err={}", .{err});
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
|
||||||
.paste_from_clipboard => try self.startClipboardRequest(
|
.paste_from_clipboard => try self.startClipboardRequest(
|
||||||
.standard,
|
.standard,
|
||||||
.{ .paste = {} },
|
.{ .paste = {} },
|
||||||
|
@ -281,6 +281,10 @@ pub const Action = union(enum) {
|
|||||||
/// If there is a URL under the cursor, copy it to the default clipboard.
|
/// If there is a URL under the cursor, copy it to the default clipboard.
|
||||||
copy_url_to_clipboard,
|
copy_url_to_clipboard,
|
||||||
|
|
||||||
|
/// Copy the terminal title to the clipboard. If the terminal title is not
|
||||||
|
/// set this has no effect.
|
||||||
|
copy_title,
|
||||||
|
|
||||||
/// Increase the font size by the specified amount in points (pt).
|
/// Increase the font size by the specified amount in points (pt).
|
||||||
///
|
///
|
||||||
/// For example, `increase_font_size:1.5` will increase the font size
|
/// For example, `increase_font_size:1.5` will increase the font size
|
||||||
@ -1005,6 +1009,7 @@ pub const Action = union(enum) {
|
|||||||
.reset,
|
.reset,
|
||||||
.copy_to_clipboard,
|
.copy_to_clipboard,
|
||||||
.copy_url_to_clipboard,
|
.copy_url_to_clipboard,
|
||||||
|
.copy_title,
|
||||||
.paste_from_clipboard,
|
.paste_from_clipboard,
|
||||||
.paste_from_selection,
|
.paste_from_selection,
|
||||||
.increase_font_size,
|
.increase_font_size,
|
||||||
|
@ -132,6 +132,12 @@ fn actionCommands(action: Action.Key) []const Command {
|
|||||||
.description = "Copy the URL under the cursor to the clipboard.",
|
.description = "Copy the URL under the cursor to the clipboard.",
|
||||||
}},
|
}},
|
||||||
|
|
||||||
|
.copy_title => comptime &.{.{
|
||||||
|
.action = .copy_title,
|
||||||
|
.title = "Copy Terminal Title to Clipboard",
|
||||||
|
.description = "Copy the terminal title to the clipboard. If the terminal title is not set this has no effect.",
|
||||||
|
}},
|
||||||
|
|
||||||
.paste_from_clipboard => comptime &.{.{
|
.paste_from_clipboard => comptime &.{.{
|
||||||
.action = .paste_from_clipboard,
|
.action = .paste_from_clipboard,
|
||||||
.title = "Paste from Clipboard",
|
.title = "Paste from Clipboard",
|
||||||
|
Reference in New Issue
Block a user