加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 如何为pbcopy生成富文本链接

发布时间:2020-12-17 03:52:39 所属栏目:百科 来源:网络整理
导读:我一直在播放一个脚本,该脚本在Chrome中选择文本并在Google中查找,提供四个首选,然后粘贴相关链接.它以不同的格式粘贴,具体取决于当前在Chrome中打开的页面 – DokuWiki格式,DokuWiki打开,HTML与普通网站,我想要WordPress WYSIWYG编辑器的富文本. 我尝试使用
我一直在播放一个脚本,该脚本在Chrome中选择文本并在Google中查找,提供四个首选,然后粘贴相关链接.它以不同的格式粘贴,具体取决于当前在Chrome中打开的页面 – DokuWiki格式,DokuWiki打开,HTML与普通网站,我想要WordPress WYSIWYG编辑器的富文本.

我尝试使用pbpaste -Prefer rtf来查看粘贴板上没有其他样式的富文本链接,但它仍然输出纯文本.在文本编辑中保存文件并进行实验后,我想出了以下内容

text = %q|{rtf1{field{*fldinst{HYPERLINK "URL"}}{fldrslt TEXT}}}|
text.gsub!("URL",url)
text.gsub!("TEXT",stext)

(我不得不使用gsub,因为不知何故,当使用%Q和#{}插入变量时,字符串不起作用)

但是,当我粘贴它时,链接之前和之后还有一个额外的换档符号.字符串会是什么样的,以避免这种情况?

解决方法

从shell开始,干净的解决方案就是:

URL="http://www.google.com/"
NAME="Click here for Google"
echo "<a href='$URL'>$NAME</a>" | textutil -stdin -format html -convert rtf -stdout | pbcopy

因此,使用textutil命令将正确的html ..转换为rtf …

ruby变种:

url = 'http://www.google.com'
name = 'click here'
system("echo '<a href="#{url}">#{name}</a>' | textutil -stdin -format html -convert rtf -stdout | pbcopy")

所以,当你在没有pbcopy部分的情况下运行上面的内容时,你会得到:

{rtf1ansiansicpg1250cocoartf1038cocoasubrtf350
{fonttblf0fromanfcharset0 Times-Roman;}
{colortbl;red255green255blue255;red0green0blue238;}
deftab720
pardpardeftab720qlqnatural
{field{*fldinst{HYPERLINK "http://www.google.com/"}}{fldrslt 
f0fs24 cf2 ul ulc2 click here}}}

编辑:删除-Prefer基于mklement注释

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读