commit fc8a4f4bcc53704dd3de807d8e999810ef9fad53
Author: Juergen Spitzmueller <[email protected]>
Date: Sun Aug 16 14:57:08 2026 +0200
Let "copy plain" copy no screen labels (as opposed to default copy) (#7558)
---
lib/ui/stdmenus.inc | 1 +
src/BufferView.cpp | 3 ++-
src/CutAndPaste.cpp | 4 ++--
src/CutAndPaste.h | 3 ++-
src/LyXAction.cpp | 2 +-
5 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/lib/ui/stdmenus.inc b/lib/ui/stdmenus.inc
index 5c9c9106f0..979e274bd5 100644
--- a/lib/ui/stdmenus.inc
+++ b/lib/ui/stdmenus.inc
@@ -163,6 +163,7 @@ Menuset
Item "Copy as LaTeX|L" "copy latex"
Item "Copy as XHTML|H" "copy xhtml"
Item "Copy as DocBook|D" "copy docbook"
+ Item "Copy as Plain Text (without Labels)|T" "copy plain"
End
Menu "edit_paste"
diff --git a/src/BufferView.cpp b/src/BufferView.cpp
index 30fd367a53..b7c8ad52c4 100644
--- a/src/BufferView.cpp
+++ b/src/BufferView.cpp
@@ -2693,7 +2693,8 @@ void BufferView::dispatch(FuncRequest const & cmd,
DispatchResult & dr)
option = AS_STR_XHTML;
else if (type == "docbook")
option = AS_STR_DOCBOOK;
- cap::copySelection(cur, option);
+ bool const with_label = type != "plain";
+ cap::copySelection(cur, option, with_label);
if (!type.empty())
cur.message(bformat(_("Copy to Format: %1$s"),
from_ascii(type)));
else
diff --git a/src/CutAndPaste.cpp b/src/CutAndPaste.cpp
index 8f6d9d7555..7b7df91c86 100644
--- a/src/CutAndPaste.cpp
+++ b/src/CutAndPaste.cpp
@@ -1045,9 +1045,9 @@ void cutSelectionToTemp(Cursor & cur, bool realcut)
}
-void copySelection(Cursor const & cur, int const option)
+void copySelection(Cursor const & cur, int const option, bool const with_label)
{
- copySelection(cur, cur.selectionAsString(true, true, option));
+ copySelection(cur, cur.selectionAsString(with_label, true, option));
}
diff --git a/src/CutAndPaste.h b/src/CutAndPaste.h
index db4edc08f6..68eac50198 100644
--- a/src/CutAndPaste.h
+++ b/src/CutAndPaste.h
@@ -71,7 +71,8 @@ void cutSelection(Cursor & cur, bool realcut = true);
void cutSelectionToTemp(Cursor & cur, bool realcut = true);
/// Push the current selection to the cut buffer and the system clipboard.
-void copySelection(Cursor const & cur, int const option = 0);
+void copySelection(Cursor const & cur, int const option = 0,
+ bool const with_label = true);
/// Like copySelection, but only put to temporary cut buffer
void copySelectionToTemp(Cursor const & cur);
///
diff --git a/src/LyXAction.cpp b/src/LyXAction.cpp
index 5cd182d627..f5939d8f07 100644
--- a/src/LyXAction.cpp
+++ b/src/LyXAction.cpp
@@ -1436,7 +1436,7 @@ void LyXAction::init()
* \var lyx::FuncCode lyx::LFUN_COPY
* \li Action: Copies the current selection to the clipboard.
* \li Syntax: copy [<type>]
- * \li Params: <type>: type of copy, possible values: plain (= default), latex,
+ * \li Params: <type>: type of copy, possible values: plain (= without
labels), latex,
* html, docbook
* \endvar
*/
--
lyx-cvs mailing list
[email protected]
https://lists.lyx.org/mailman/listinfo/lyx-cvs