请考虑以下带有内核命令行界面的对话框:
$ math
Mathematica 6.0 for Linux x86 (32-bit)
In[1]:= p = Plot[x^2, {x,-1,1}]
Out[1]= -Graphics-
In[2]:= Export["foo.png", p]
Out[2]= foo.png
Run Code Online (Sandbox Code Playgroud)
这在一台机器上工作正常$Version = 6.0 for Linux x86 (32-bit) (June 2, 2008)但在$Version = 7.0 for Linux x86 (64-bit) (November 11, 2008)具有以下错误的机器上失败:
Export::nofe: A front end is not available; export of PNG
requires a front end.
Run Code Online (Sandbox Code Playgroud)
我可以想到任何其他图像格式的类似错误.
所以问题是,我怎样才能获得Mathematica内核,没有前端,导出图像?为什么它在Mathematica 6.0中顺利运行?如果以上示例适用于版本7,请告诉我们!
PS:版本7引入了该功能,UsingFrontEnd但失败了
Developer`UseFrontEnd::nofestart:
Unable to launch a front end. Proceeding without a front end.
Run Code Online (Sandbox Code Playgroud)
大概是因为机器上没有安装X11.
事实证明,在这方面版本6和版本7之间没有区别.相反,在版本为6的机器上,前端正在静默调用.正如这个问题的答案所表明的那样,另一台机器的问题是没有X服务器,因此无法调用前端.
您可以" ls -l获取详细的目录列表,如下所示:
-rw-rw-rw- 1 alice themonkeys 1159995999 2008-08-20 07:01 foo.log
-rw-rw-rw- 1 bob bob 244251992 2008-08-20 05:30 bar.txt
Run Code Online (Sandbox Code Playgroud)
但请注意您必须沿着屏幕滑动手指以确定这些文件大小的数量级.
在目录列表中为文件大小添加逗号的好方法是什么,如下所示:
-rw-rw-rw- 1 alice themonkeys 1,159,995,999 2008-08-20 07:01 foo.log
-rw-rw-rw- 1 bob bob 244,251,992 2008-08-20 05:30 bar.txt
Run Code Online (Sandbox Code Playgroud) 我的默认设置是将tex源放在subversion存储库中,并在更改其他人的内容时将注释作为源中的注释插入彼此.这一切都感觉非常不理想,特别是当存在颠覆冲突时,所有它告诉你的是"这个巨大段落的这两个版本都存在冲突".
我想出了一些技巧,但我确信那里有更好的想法(或者我的想法的更好版本).
有关代码协作,请参阅此问题:
(其中一些答案也适用于LaTeX文档上的协作.)
为用户提供网站内容的友好网址当然很好.但是如何最好地做到这一点?像foo.com/users/alice这样的东西有很多优点,最重要的是你不会弄乱根命名空间.但我认为用户的简单性胜过所有这些.许多大型网站似乎都同意(友情,美味和flickr想到),这个问题是关于如何在服务器端实现这一点.
让我们假设alice的真实网址是foo.com/userpage?user=alice,如果有人试图浏览到不存在的用户页面(让我们说foo.com/bob),他们应该访问foo.com/createnew?user=bob .
当然,用户永远不应该看到上面那些丑陋的"真实"网址,只有foo.com/alice或foo.com/bob.请注意,根名称空间是共享的.例如,foo.com/help不应转换为foo.com/userpage?user=help.
大概是我要求一些简单的mod_rewrite规则,但也许有一些完全不同的方法,我没想到.无论如何,我认为记录这个常见问题的确定性或"最佳实践"解决方案会很好.
PS:请随意评论alice.foo.com或users.foo.com/alice等其他替代品的优点.
PPS:我想我已经看到这个问题在其他问题上有争议,但搜索似乎很棘手.指针欢迎!当然,除了可以使其更易于搜索的其他关键字.关键字:用户空间,全局命名空间,URL命名空间.
我有一个回复用户的机器人.但有时当我的机器人发送回复时,用户或他们的电子邮件提供商将自动响应(休假消息,退回消息,来自邮件程序守护程序的错误等).然后,这是来自用户的新消息(因此我的机器人认为)它反过来回复.邮件循环!
我希望我的机器人只回复来自真实人类的真实电子邮件.我目前正在过滤掉承认批量优先权的邮件或邮件列表,或者自动提交的标题等于"自动回复"或"自动生成"(请参阅下面的代码).但我想有一个更全面或标准的方法来处理这个问题.(除了Perl之外,我很高兴看到其他语言的解决方案.)
注意:请记住让自己的机器人声明它是自动回复!包括
Auto-Submitted: auto-reply
Run Code Online (Sandbox Code Playgroud)
在机器人的电子邮件的标题中.
我的原始代码是避免邮件循环.只有当realmail返回true时才回复.
sub realmail {
my($email) = @_;
$email =~ /\nSubject\:\s*([^\n]*)\n/s;
my $subject = $1;
$email =~ /\nPrecedence\:\s*([^\n]*)\n/s;
my $precedence = $1;
$email =~ /\nAuto-Submitted\:\s*([^\n]*)\n/s;
my $autosub = $1;
return !($precedence =~ /bulk|list|junk/i ||
$autosub =~ /(auto\-replied|auto\-generated)/i ||
$subject =~ /^undelivered mail returned to sender$/i
);
}
Run Code Online (Sandbox Code Playgroud)
(主题检查肯定是没有必要的;我只是在出现问题时一次添加一个这些检查,上面现在似乎有效,所以我不想触摸它,除非有明确的更好的东西.)
我很想知道Etherpad和Google Docs如何自动保存数据.在编写文本文档时,产品仅将更改发送到服务器.知道这项技术如何运作以及我可以去哪里了解更多关于终端2端的信息?
谢谢
如果你想要一个按钮提供触觉反馈(即手机振动非常短暂,你可以感觉到你真的按下按钮),那么标准的方法是什么?看来你可以显式设置一个onClick()事件并调用vibrate()函数,给出振动的毫秒数,或者你可以在视图中设置hapticFeedbackEnabled.
该文档似乎表明后者仅适用于长按或虚拟屏幕键:http: //developer.android.com/reference/android/view/View.html#performHapticFeedback(int)
如果这是正确的,那么我需要使我的按钮成为虚拟屏幕键或手动设置onClick()事件.
您有什么推荐的吗?
此外,如果我希望当用户的手指触摸按钮时立即发生振动,而不是当他们的手指"释放"按钮时,那么最好的方法是什么?
相关问题: 如何在按钮视图上启用触觉反馈
这是连续两天之间的小时数的计算:
(AbsoluteTime[{2011, 3, 14}] - AbsoluteTime[{2011, 3, 13}]) / 3600
Run Code Online (Sandbox Code Playgroud)
所以你可能不会对Mathematica回归感到惊讶24.但令人惊讶的是.其他所有编程语言都会说23,因为3月13日是夏令时的开始.我需要我的Mathematica程序在这方面与其他语言保持一致.你会推荐什么?
要明确问题:AbsoluteTime[{2011,3,13}]给出3508963200.减去unix时代,这是一个unixtime 1299988800.但是将unixtime交给任何其他编程语言,并询问它对应的日期,它将在3月12日而不是3月13日.(同样的事情将在3月14日正常工作.)
(好吧,我知道你很想知道为什么我要遵守所有那些明显破碎的语言.首先,其他语言都有一点:感谢"向前迈进",3月14日午夜是3月13日午夜过后23小时.为什么我真正关心:我们使用unixtime作为日期的规范表示.所以当我想将"2011-03-13 00:00 EST"传送到另一个程序时,我发送AbsoluteTime减去unix时代这在Mathematica中运行良好.当我将该unixtime转换回来时,我再次获得"2011-03-13 00:00 EST".但是如果我将该unixtime发送到另一个程序,它会将其解释为"2011-03-12 23:00 EST"这是一个问题,因为那是前一天."
这里有一些CSS和HTML,可以在数据点列表下面创建一个textarea:
form label {
width: 140px;
float: left;
}
form ol li {
background: #98c8dc;
list-style: none;
padding: 5px 10px;
}
<form>
<ol>
<li>
<label><br/><br/><br/><br/>Recent data</label>
<ol>
<li>3 99</li>
<li>5 98</li>
<li>15 97</li>
<li>28 96</li>
</ol>
</li>
<li>
<label>New data</label>
<textarea placeholder="30 95" rows="4"></textarea>
</li>
</ol>
</form>
Run Code Online (Sandbox Code Playgroud)
它呈现如下:

你会怎么推荐我把它排好呢?也就是说,"最近的数据"应该排在"28 96"线上,也许最棘手的是,"30 95",尽管在文本区域,但应排成一行,好像它只是在"28 96"之后的另一行.
假设我想要一个字符串,比如"123"来填充给定的矩形,如下所示:
Show[Plot[x, {x, 0, 1}],
Graphics[{EdgeForm[Thick], Yellow, Rectangle[{.1, .5}, {.4, .9}]}],
Graphics[Text[Style["123", Red, Bold, 67], {.1, .5}, {-1, -1}]]]
Run Code Online (Sandbox Code Playgroud)

但我手动调整了那里的字体大小(67),以便它填满矩形.如何使任意字符串填充任意矩形?
android ×1
bots ×1
command-line ×1
css ×1
datetime ×1
email ×1
etherpad ×1
export ×1
filesystems ×1
friendly-url ×1
google-docs ×1
html ×1
image ×1
java ×1
javascript ×1
latex ×1
layout ×1
mod-rewrite ×1
namespaces ×1
perl ×1
svn ×1
sysadmin ×1
textarea ×1
unix ×1
url ×1