标签: paste

在 X11 中使用 Xlib 复制粘贴选择:XA_TARGETS 原子数组

我已经在 Xlib 程序中实现了文本字符串的复制粘贴。当我的程序拥有当前选择,并且我粘贴到 xterm、gimp 中的文本字段或 firefox 中时,它工作正常:我粘贴到的程序将 SelectionRequest 事件发送到我的程序,目标为 XA_UTF8_STRING ("UTF8_STRING "),我的程序会适当响应并粘贴字符串。

但是,当我的程序拥有当前选择,并且我尝试粘贴到 Thunderbird(版本 16.0.2)中的消息编写窗口或 SeaMonkey Web 浏览器(版本 2.20)中的文本字段中时,Thunderbird 和 SeaMonkey 会向我的程序发送一个 SelectionRequest 事件。使用目标 XA_TARGETS(“TARGETS”)进行程序,并且出现问题。我的理解是,我的程序应该响应它可以提供的一系列目标 - 我的程序的相关代码如下。(注意这是在64位机器上,Atom类型是64位)。Thunderbird / SeaMonkey 似乎对我的回复不满意,因为他们随后向我的程序发送了许多具有不同目标的后续 SelectionRequest 事件,就好像他们试图查看我将返回哪一个(他们尝试 application/x-moz-nativehtml, text/html、application/x-moz-file、image/png、image/jpeg、image/gif),然后最后尝试目标 UTF8_STRING,我的代码成功响应并粘贴了字符串。这一切可能需要 1 秒或更长时间,因此在粘贴字符串之前会有明显的延迟。

为了尝试调试,我修改了代码,以便当我粘贴到我的程序中时,另一个程序是所有者,我向它们发送一个带有目标 XA_TARGETS 的 SelectionRequest 事件,这样我就可以看到 Thunderbird 或 SeaMonkey 如何响应。我返回一个 SelectionNotify 事件,目标为 XA_TARGETS,并且该事件的属性设置为我请求的属性,当我在自己的窗口上读取该属性时,我发现它是一个类型为 XA_ATOM、格式为 32、长度为 0 的数组。因此,当我向 Thunderbird 或 SeaMonkey 询问时,我似乎没有从他们那里得到任何目标数组。

平台:Ubuntu 12.10 Linux x86_64

我使用的参考: http://svn.gna.org/svn/warzone/trunk/lib/betawidget/src/platform/sdl/clipboardX11.c

...
if ( event.type == SelectionRequest ) {
  Atom propertyOfRequestorToSet = event.xselectionrequest.property==None ? XA_PRIMARY : …
Run Code Online (Sandbox Code Playgroud)

paste xlib selection gdk

5
推荐指数
0
解决办法
2132
查看次数

从文件中一次粘贴一行(或一部分)

我是一名使用 Windows 的教师,希望能够将示例文件中的简短程序片段一个接一个地粘贴到我正在教授的任何编程环境中(例如 python IDLE shell 或编辑器)。在讲座期间,我会打开 IDLE,然后使用 Ctrl-v 将文件中的第 1 行粘贴到 IDLE 中,执行并讨论它,然后使用 Ctrl-v 将文件中的第 2 行粘贴到 IDLE 中,执行并讨论它,然后使用 Ctrl-V 使第 3 行进入 IDLE,依此类推...

我怀疑有某种方法可以使用剪贴板管理器来执行此操作,但尚未在网上找到。

能够粘贴代码段而不仅仅是单行也非常有用。文件中的代码部分可以用空行或某种文本字符串指示符分隔。

拥有此功能将使我能够将所有示例准备在一个文件中,然后在讲座期间使用 Ctrl-v 一次快速访问所有示例。

windows clipboard paste presentation

5
推荐指数
1
解决办法
3127
查看次数

Paste multiple rows together in R

I have a data frame, I want to get the matrix with row 1 paste with row 2, row 3 paste with row 4, if the data frame have odd row, leave the last row the same, instead of paste row, paste column 1 and column2, column 3 and column 4, Matrix will be:

data <- data.frame(name = c(1:4), plate=c("A","B","C","D"), value1=c(4:7), value2 = c(100, 200, 300, 400))

data
     name plate value1 value2
      1     A      4    100
      2     B      5    200 …
Run Code Online (Sandbox Code Playgroud)

r matrix paste apply

5
推荐指数
1
解决办法
1万
查看次数

为什么 tmux 在粘贴多行命令时不插入换行符?

我在编写shell脚本(或其他相关语言)时经常使用REPL风格的编码方法,最近注意到以下问题。我运行 tmux,这样我就可以在 vim 的窗格中与终端提示符并排打开我的脚本。

多路复用器

如果我尝试在 Mac 上使用 CMD-v 一次粘贴多行命令,即

a=hello
b=World
echo $a $b
Run Code Online (Sandbox Code Playgroud)

tmux 无法正确处理换行符,而是给出以下输出:

[user@host: ~]$ a=hello
b='World'
echo $a $b
[user@host: ~]$ b='World'echo $a $b
Run Code Online (Sandbox Code Playgroud)

如果我清除提示并运行echo $a,我会hello在屏幕上回显,但echo $b会生成一个空行,并且显然该echo $a $b行不会运行。

我使用类似 REPL 得到相同的输出gnuplot,或者使用rlwrap.

替代 tmux 尝试

使用vim-slime或手动使用相关 vim-slime 系统调用时也会出现同样的问题:

[user@host: ~]$ tmux set-buffer 'a=hello
> b=World
> echo $a $b
> '
[user@host: ~]$ tmux paste-buffer -p
a=hello
b=World
echo $a $b
[user@host: …
Run Code Online (Sandbox Code Playgroud)

bash shell paste tmux

5
推荐指数
1
解决办法
3275
查看次数

PowerPoint VBA:哪个命令(或一组命令)会从我的.jpg图片中创建ppt帧?

我在C:\ my_folder中有几个.jpg文件

以下是他们的名字:pic_1.jpg,pic_2.jpg,pic_3.jpg,pic_4.jpg,pic_5.jpg.

我应该使用Power Point VBA中的哪些命令或一组命令,以便能够在PowerPoint中自动创建多个帧,以便每个帧包含一个图片?

scripting image frames paste powerpoint-vba

4
推荐指数
1
解决办法
1万
查看次数

Unix连接两个以上的文件

我有三个文件,每个文件都有一个ID和一个值.

sdt5z@fir-s:~/test$ ls
a.txt  b.txt  c.txt
sdt5z@fir-s:~/test$ cat a.txt 
id1 1
id2 2
id3 3
sdt5z@fir-s:~/test$ cat b.txt 
id1 4
id2 5
id3 6
sdt5z@fir-s:~/test$ cat c.txt 
id1 7
id2 8
id3 9
Run Code Online (Sandbox Code Playgroud)

我想创建一个看起来像这样的文件......

id1 1 4 7
id2 2 5 8
id3 3 6 9
Run Code Online (Sandbox Code Playgroud)

...最好使用单个命令.

我知道连接和粘贴命令.粘贴将每次复制id列:

sdt5z@fir-s:~/test$ paste a.txt b.txt c.txt 
id1 1   id1 4   id1 7
id2 2   id2 5   id2 8
id3 3   id3 6   id3 9
Run Code Online (Sandbox Code Playgroud)

加入效果很好,但一次只有两个文件:

sdt5z@fir-s:~/test$ join a.txt b.txt 
id1 1 4
id2 …
Run Code Online (Sandbox Code Playgroud)

perl text join cut paste

4
推荐指数
1
解决办法
2998
查看次数

水平合并两个文件并进行格式化

我有两个文件,如下所示:

文件_1

Austin
Los Angeles
York
San Ramon
Run Code Online (Sandbox Code Playgroud)

文件_2

Texas
California
New York
California
Run Code Online (Sandbox Code Playgroud)

我想将它们水平合并,如下所示:

Austin       Texas
Los Angeles  California
York         New York
San Ramon    California
Run Code Online (Sandbox Code Playgroud)

我可以通过使用paste命令水平合并,但是格式变得很麻烦。

Austin Texas
Los Angeles California
York New York
San Ramon California
Run Code Online (Sandbox Code Playgroud)

我意识到它paste正在按预期的方式工作,但是有人可以向我指出正确的方向来正确设置格式。

谢谢。

unix paste

4
推荐指数
1
解决办法
3970
查看次数

如何从系统剪贴板粘贴到控制台Vim?

我可以将文本从Vim复制到其他Mac应用程序"*y.但是当我尝试从TextEdit粘贴到Vim时,我无法粘贴文本"*p.我错过了一些设置吗?

macos vim clipboard paste

4
推荐指数
1
解决办法
7950
查看次数

R矢量成字符串的字符串

我是R和mySQL的新手,想在R中运行以下mysql命令

query = "select x, y from table where z in ('a', 'b');"
sqlQuery(connection, query)
Run Code Online (Sandbox Code Playgroud)

假设我有一个很长的可变长度向量.有可能吗?

vector = c('a','b', .....)
query = "select x, y from table where z in **vector**;"
Run Code Online (Sandbox Code Playgroud)

我试过了

query = paste("select x, y from table where z in (", paste(vector, collapse =', '), ");")
Run Code Online (Sandbox Code Playgroud)

但我在括号中丢失了引号而且我得到了

query = "select x, y from table where z in (a, b);"
Run Code Online (Sandbox Code Playgroud)

它不在sqlQuery中运行.有没有办法使用粘贴命令,以便我得到一串字符串?或者有更好的方法来完成我想要完成的任务吗?

sql r paste

4
推荐指数
1
解决办法
2089
查看次数

使用R中的粘贴加载和删除数据集

我有大量类似名称的.R数据集.我正在尝试加载它们(我可以成功完成),对它们做一些事情,然后在一个循环中将它们从工作区中删除.我正在努力删除它们,因为它们是在粘贴命令中出现的错误类.虽然我知道什么是错的,但我不知道如何纠正我的代码,所以欢迎提出建议.这是一些示例代码

for(i in 1:n){
    load(paste("C",i,".R",sep=""))
    # do stuff to dataset
    rm(paste("C",i,sep="")) #this line is clearly wrong
}
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助

r rm paste

4
推荐指数
1
解决办法
680
查看次数

标签 统计

paste ×10

r ×3

clipboard ×2

apply ×1

bash ×1

cut ×1

frames ×1

gdk ×1

image ×1

join ×1

macos ×1

matrix ×1

perl ×1

powerpoint-vba ×1

presentation ×1

rm ×1

scripting ×1

selection ×1

shell ×1

sql ×1

text ×1

tmux ×1

unix ×1

vim ×1

windows ×1

xlib ×1