小编Cam*_*ron的帖子

没有回车的Nokogiri to_xml

我目前正在使用Nokogiri :: XML :: Builder类来构造XML文档,然后在其上调用.to_xml.结果字符串总是在节点之间包含一堆空格,换行符和回车符,我不能为我的生活弄清楚如何摆脱它们.这是一个例子:

b = Nokogiri::XML::Builder.new do |xml|
  xml.root do
    xml.text("Value")
  end
end

b.to_xml
Run Code Online (Sandbox Code Playgroud)

这导致以下结果:

<?xml version="1.0"?>
<root>Value</root>
Run Code Online (Sandbox Code Playgroud)

我想要的是这个(注意缺少的换行符):

<?xml version="1.0"?><root>Value</root>
Run Code Online (Sandbox Code Playgroud)

如何才能做到这一点?提前致谢!

ruby xml newline nokogiri

19
推荐指数
1
解决办法
9925
查看次数

如何打包Github的Atom编辑器以嵌入网页?

Github最近发布了他们的Atom编辑器开源.因为它都是用JavaScript编写的,所以它应该相对容易嵌入.不幸的是,除了在节点和Chromium的自定义版本中它们与Atom版本捆绑在一起之外,它看起来不像任何地方.

有谁知道如何为浏览器打包Atom?有没有人尝试过这个?

javascript editor code-editor atom-editor

18
推荐指数
1
解决办法
2016
查看次数

如何使用PHP设置交互式SSH会话?

我正在尝试通过Mac OS X 10.6上的命令行使用PHP建立到远程服务器的交互式SSH连接.我目前正在使用PHP的proc_open函数来执行以下命令:

ssh -t -t -p 22 user@server.com
Run Code Online (Sandbox Code Playgroud)

这几乎可行.该-t -t选项都应该强制伪终端,他们几乎做.我可以输入SSH密码并按Enter键.但是,按下后,终端似乎只是挂起.没有输出,没有任何东西 - 就像SSH会话失败一样.我无法运行命令或任何东西,必须使用Ctrl + C杀死整个事物.我知道登录成功,因为我可以执行命令,ssh -t -t -p 22 user@server.com "ls -la"并获得正确的输出.

我认为这个问题必须与我在proc_open调用中使用标准管道的事实有关,所以我用pty替换它们.我收到以下错误:"此系统不支持pty伪终端......"

Mac OS X根本不支持pty或伪终端吗?(我很擅长使用所有这些shell术语).

这是PHP代码:

$descriptorspec = array(0 => array("pty"), 1 => array("pty"), 2 => array("pty"));  
$cwd = getcwd();  
$process = proc_open('ssh -t -t -p 22 user@server.com', $descriptorspec, $pipes, $cwd);  
if (is_resource($process))  
{  
    while (true)  
    {  
        echo(stream_get_contents($pipes[1]));  
        $status = proc_get_status($process);  
        if (! $status["running"])  
            break;  
    }  
} 
Run Code Online (Sandbox Code Playgroud)

(对不起 - 我不能为我的生活弄清楚SO的格式说明......)

我究竟做错了什么?为什么我不能用pty?这在Mac OS X上是不可能的吗?谢谢你的帮助!

php openssh proc-open pty

3
推荐指数
1
解决办法
6571
查看次数

标签 统计

atom-editor ×1

code-editor ×1

editor ×1

javascript ×1

newline ×1

nokogiri ×1

openssh ×1

php ×1

proc-open ×1

pty ×1

ruby ×1

xml ×1