小编Leo*_*yev的帖子

如何在签出先前的提交后返回到最新的提交?

我有时会检查一些以前版本的代码来检查或测试.如果我想修改以前的提交,我已经看到了如何操作的说明 - 但是假设我没有做任何更改.在我完成例如之后,我git checkout HEAD^如何回到分支的尖端?... git log不再向我显示最新提交的SHA.

git version-control

433
推荐指数
7
解决办法
22万
查看次数

Windows和PNG文件下的Emacs

任何人都有任何关于获取PNG图像以在Win32下的Emacs 23中显示的指示吗?..我已经安装了gnuwin32实用程序集,包括libpng和zlib; C:\ Program Files\GnuWin32\bin在路径中.JPG文件开始工作但不是PNG.我很欣赏任何关于让它发挥作用的暗示.

编辑:PNG缩略图实际上显示正常(例如通过Ct Ct在dired中).但是,打开它们会失败(在基本模式下打开为垃圾,而Mx图像模式则表示"无效的图像规范").

windows emacs

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

使用字符串而不是符号:好还是坏?

通常情况下,我发现自己处理表单的功能选项列表(或更常见的替换列表){foo->value,...}.当foo已经在$ Context中有一个值时,这会导致错误.一种显而易见的方法是使用字符串"foo"而不是符号:{"foo"->value,...}.这很有效,但似乎让我知道的一些经验丰富的LISPers感到愤怒,他们惩罚我混淆符号和字符串并告诉我使用内置的引用结构.

虽然这绝对有可能写的是避免冲突,而不使用字符串代码,它往往显得更麻烦比它的价值.另一方面,我没有看到太多{"string"->value}类型替换规则的例子.所以问题是 - 这是一种可以接受的使用模式吗?..是否有特别合适的情况?......应该避免哪里?

wolfram-mathematica

20
推荐指数
1
解决办法
659
查看次数

导出出版物的图形:如何在绘图元素中实现一致的线条粗细?

似乎用mma创建出版品质的图形是一种可以追溯到几十年前的黑色艺术.虽然近年来情况有了很大改善,但在导出到文件时仍难以获得一致的结果.最终结果看起来似乎有些依赖于格式(根据我的经验,EPS效果最好).

通常情况下,帧和刻度线中的线条在EPS文件中最终过于模糊,并且在尝试执行类似操作时FrameStyle->AbsoluteThickness[2],很容易得到太粗的线条.因此,我目前的方法涉及在BaseStyle中采用五个参数 - 三个线条粗细(在FrameStyle,AxesStyle和PlotStyle中),ImageSize和FontSize - 并随机调整它们直到导出的图形看起来可以接受.这有点令人不满意且耗时.

是否有更好的方法和/或标准处方可以实现平衡,美观的情节?

编辑:这是一个例子.在屏幕上看起来不错(见屏幕截图),但将其导出到EPS中你可能会看到两件事:(a)EPS字体嵌入有一个错误:对我来说,图中的epsilon没有正确嵌入,除非我删除该FontWeight->Normal指令.(b)框架/刻度线为浅灰色且1像素厚.如果我想缩小这个数字(例如将其作为插图),它会破坏质量.但是,使用AbsoluteThickness[2]看起来很糟糕 - 所以我必须增加ImageSize.但是字体太小和/或图中的线条看起来太薄等等等.

With[{exSubscript = "\[UpTee]", epsFontSize = 24, 
   xcoords = {0.63, 2.2}}, testInset = Style[Inset[Cell[TextData[Cell[
      BoxData[FormBox[SubscriptBox["\[Epsilon]", exSubscript], 
           TraditionalForm]]]]], xcoords, {Left, Baseline}], 
     FontWeight -> Normal, FontSize -> epsFontSize];
  ];
Show[Plot[10 x^2, {x, 0, 1}, PlotStyle -> Thick, Frame -> True, 
  PlotRange -> {-2, 8}, Epilog -> {testInset}], Axes -> {True, True}, 
 AxesOrigin -> {0, 0}, AxesStyle -> Dashed, 
 FrameLabel -> {"\[Lambda] [\[Mu]m]", "Re{\[Epsilon]}"}, 
 BaseStyle -> …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica

17
推荐指数
2
解决办法
2万
查看次数

是否有可能在Mathematica中创建极地CountourPlot/ListCountourPlot/DensityPlot?

我希望绘制类似于低语画廊模式的东西 - 极坐标中的2D圆柱对称图.像这样的东西:

耳语画廊模式

我在Trott的符号指南中找到了以下代码片段.尝试在非常小的数据集上运行它; 它吃了4 GB的内存并给我的内核灌了一把:

(* add points to get smooth curves *)
addPoints[lp_][points_, \[Delta]\[CurlyEpsilon]_] := 
Module[{n, l}, Join @@ (Function[pair,
       If[(* additional points needed? *)
          (l = Sqrt[#. #]&[Subtract @@ pair]) < \[Delta]\[CurlyEpsilon], pair, 
          n = Floor[l/\[Delta]\[CurlyEpsilon]] + 1; 
          Table[# + i/n (#2 - #1), {i, 0, n - 1}]& @@ pair]] /@ 
          Partition[If[lp === Polygon, 
                       Append[#, First[#]], #]&[points], 2, 1])]

(* Make the plot circular *)
With[{\[Delta]\[CurlyEpsilon] = 0.1, R = 10}, 
 Show[{gr /. (lp : (Polygon …
Run Code Online (Sandbox Code Playgroud)

wolfram-mathematica

12
推荐指数
2
解决办法
6700
查看次数

穿越换行符

是否有可能使isearch忽略换行符,即搜索foo bar将找到

.......... foo
bar .....
Run Code Online (Sandbox Code Playgroud)

在导航长文档的过程中,我经常会遇到这样的问题而感到厌烦,而且这很烦人.我知道word-search-forward找到跨行匹配,但它有一些缺点(例如它强迫你使用完整的单词,因此搜索"foo b"将失败;它不会突出显示搜索结果),更重要的是,它是根据您是否正在搜索一个或两个单词,使用不同的命令有点傻.

emacs

11
推荐指数
1
解决办法
695
查看次数

emacs shell模式下的Gnu屏幕:如何修复颜色转义码

我想在shell模式下在emacs中附加screen或tmux.我经常发现自己在远程服务器的屏幕内运行带有劣质进程的emacs; 如果我可以将工作流程转移到本地emacs + TRAMP,那就太好了; 但是,必须具备重新连接持久会话的能力.(这种工作流程对R [1]中的分析特别有用)

Shell模式是相当可取的,因为我在使用Mx术语或Mx ansi-term + screen + R的组合时遇到了各种故障甚至崩溃.但是,我似乎无法摆脱ansi彩色渲染为转义码在Mx shell下运行时的屏幕.当我使用时ansi-color-for-comint-mode-on,它们很好 - 但是一旦屏幕出现,就会变得非常混乱.

有没有人想出用shell + screen或tmux正确解释ansi颜色的条件?如何完全摆脱颜色?在运行持久性远程进程并将它们附加到本地emacs方面还有其他选择吗?

[1] http://blog.nguyenvq.com/2010/07/11/using-r-ess-remote-with-screen-in-emacs/

emacs gnu-screen tmux

10
推荐指数
1
解决办法
2405
查看次数

如何仅显示当前目录中未跟踪的文件(忽略子目录)?

git ls-files --others
Run Code Online (Sandbox Code Playgroud)

沿着目录树下来.有没有一种简单的方法,以显示未跟踪文件在当前目录?

git

10
推荐指数
1
解决办法
4791
查看次数

git rm文件后; commit - 如何从远程分支返回文件?

我正在拉入我的.emacs目录,并遇到以下冲突:

CONFLICT (add/add): Merge conflict in elisp/dired-details+.el
Run Code Online (Sandbox Code Playgroud)

Git状态显示如下:

 Unmerged paths:
 #   (use "git add/rm <file>..." as appropriate to mark resolution)
 #  both added:         elisp/dired-details+.el
Run Code Online (Sandbox Code Playgroud)

好的,所以git建议使用git rm.我想完全取代我拉在文件的本地文件,因此它似乎有种那种理智......所以,我做的git rm elisp/dired-details+.elgit merge.我明白了:

git merge:致命:你还没有完成你的合并(MERGE_HEAD存在).请在合并之前提交您的更改.

好的,好的:git commit -a -m "ugh merge conflicts"; git pull origin master.

现在一切都合并得很好,除了我失踪dired-details+.el,我有点困惑,我想知道以下的答案:

  1. 如何git-rm从远程分支撤消并获取该文件?
  2. 为什么首先出现冲突?这里发生了add/add什么?
  3. 我应该做什么而不是git-rm'我要替换的文件?...

git git-add git-rm

8
推荐指数
1
解决办法
6556
查看次数

在d3中拖动后始终禁止单击事件

在此处的一些先前问题中讨论了点击和拖动事件的解耦,例如这一问题

通常,建议if (d3.event.defaultPrevented === false) {...}在单击处理程序中使用.但是,如果mouseup和mousedown不在同一个元素中,这似乎不起作用(至少在某些浏览器中). 考虑一下这个jsfiddle(下面的代码).这是我想要的行为:单击SVG触发器点击事件(矩形闪烁)中的任意位置,在SVG拖动矩形的任何地方拖动.观察到的行为(Chrome 33):如果点击的moused在矩形内并且mouseup在外面,则拖动和单击事件都会触发.如果mousedown和mouseup都在内部或两者都在外面,则不会触发click事件.

有人可以解释为什么如果mouseup和mousedown不在同一个元素中而触发click事件,以及如何可靠地防止这种情况发生?

var container, rect, dragBehavior;

svg = d3.select('svg').attr("width", 500).attr("height", 300);
container = svg.append('g');
rect = container.append('rect').attr('width', 100).attr('height', 100);

dragBehavior = d3.behavior.drag()
    .on('dragend', onDragStart)
    .on('drag', onDrag)
    .on('dragend', onDragEnd);

svg.call(dragBehavior).on('click', onClick);

function flashRect() { rect.attr('fill', 'red').transition().attr('fill', 'black'); }

function onDragStart() { console.log('onDragStart'); }

function onDrag() {
    console.log('onDrag');
    var x = (d3.event.sourceEvent.pageX - 50);
    container.attr('transform', 'translate(' + x + ')');
}

function onDragEnd() { console.log('onDragEnd'); }

function onClick(d) {
    if …
Run Code Online (Sandbox Code Playgroud)

javascript d3.js

7
推荐指数
1
解决办法
2288
查看次数