in reply to how do I place text into clipboard on Linux?

This is a bit of a kluge:

use Tk; my $selection = MainWindow->new->SelectionGet; print $selection, $/;

the lowliest monk

Replies are listed 'Best First'.
Re^2: how do I place text into clipboard on Linux?
by Courage (Parson) on May 02, 2005 at 07:40 UTC
    This probably not exatly what I want

    by "Perl to help me with clipboard" I meant that I copied something into clipboard elsewhere (not in my application), then run my one-liner and have in my clipboard something else.

    Say, I start Mozilla, make a selection, and then in menu item "Edit->Copy" place a selection into clipboard.

    Can I write a one-liner to, say, upcase contents of clipboard, when I paste it elsewhere, I will see upcased content of selection in that Mozilla, which could be un-selected to the moment already?

    Also, it must work without X11 also.

    In win32 I do this as: perl -MWin32::Clipboard -we "$clip=Win32::Clipboard;$clip->Set(uc($clip->Get())"
    my last example is lenghty, but I have wrappers so my actual one-liner is much shorter.

      I have no experience with this very problem, but I would look into the docs for Tk::selection and Tk::Clipboard.

      the lowliest monk

      Tk::Clipboard is included in Linux's Tk.

      Use it like this (very simple)...

      use Tk::Clipboard; my $mw = MainWindow->new(); ... ## after having what you want to copy... $mw->clipboardClear; ## prepare the clipboard (ne +w entry) $mw->clipboardAppend($selected_list); ## copy it (see perldoc)
      Please, read the perldoc for more types of data that could be added to the clipboard. It defaults to strings.

      If you don't use clipboardClear before the second or successive copies, it concatenates what you copy...

      { \ ( ' v ' ) / }
      ( \ _ / ) _ _ _ _ ` ( ) ' _ _ _ _
      ( = ( ^ Y ^ ) = ( _ _ ^ ^ ^ ^
      _ _ _ _ \ _ ( m _ _ _ m ) _ _ _ _ _ _ _ _ _ ) c h i a n o , a l b e r t o
      Wherever I lay my KNOPPIX disk, a new FREE LINUX nation could be established