如何恢复我刚刚在Emacs中输入的最新击键?我是Emacs的长期用户(30年),但我经常错误地键入一个键序列,发生了一些奇怪的事情,我想知道我输入的字符序列,与我输入的字符相比.我知道有一个命令显示我输入的几十个最新的字符,但我不记得它是什么,我似乎也找不到它.例如,有时在dired-mode,我将光标移动到一个文件,然后键入!以在该文件上运行命令,但是我错误地键入了其他一些序列,突然我看到我已经选择了dired缓冲区中的所有文件 - 所有文件标有*.我正试图在这种情况下调试我的输入.
我试图理解我在下面看到的错误,并学习如何解决它.
could not find implicit value for parameter materializer: akka.Stream.Materializer
val fut: Future[Result] = action.apply(fakeRequest).run
^
not enough arguments for method run (implicit materializer: akka.stream.Materializer)scala.concurrent.Future[play.api.mvc.Result].
Unspecified value parameter materializer.
val fut: Future[Result] = action.apply(fakeRequest).run
^
Run Code Online (Sandbox Code Playgroud)
以下是产生错误的测试代码:
package com.foo.test
import com.foo.{Api, BoundingBox}
import org.scalatest.{FlatSpec, Matchers}
import play.api.libs.json._
import play.api.mvc._
import play.api.test.{FakeHeaders, FakeRequest}
import scala.concurrent.duration._
import scala.concurrent.{Await, Future}
class TestJmlPlay extends FlatSpec with Matchers {
val bbox = new BoundingBox(-76.778154438007732F, 39.239828198015971F, -76.501003519894326F, 39.354663763993926F)
"latitudes" should "be between swLat and neLat" in { …Run Code Online (Sandbox Code Playgroud) 我是C#Parallel.ForEach,和.NET的新手.我想并行化涉及数千个位置的搜索.对于每个位置,我计算大圆距离.这是我想要传播到不同核心的计算.我的问题是,如果我只有一个线程局部变量,我该怎么做呢,就像在这个MSDN TPL示例中一样?对于结果,我看了看Interlocked,看到它的选项Add,CompareExchange,Decrement,Exchange,Increment和Read,但我不只是增加,递增,递减,或测试是否相等.我希望通过并行运行的多个线程返回对象,这个线程总体上最短距离.我的直觉说这应该很容易,我应该能够创建一个包裹Location一个距离的小物体,但是如何从每个线程中捕获最佳答案然后选择它们之间的最短距离?这是非并行版本:
Location findClosestLocation(Location myLocation, List<Location> allLocations)
{
double closest = double.MaxValue;
Location closestLoc = null;
foreach (Location aLoc in allLocations)
{
if (aLoc != myLocation)
{
double d = greatCircle(myLocation, aLoc);
if (d < closest)
{
closest = d;
closestLoc = aLoc;
}
}
}
return closestLoc;
}
Run Code Online (Sandbox Code Playgroud)
我确实看到一个似乎提供了很好建议的DDJ博客文章,但我想知道这是否是最好的建议.我看到作者循环遍历数组,并想知道是否没有更多功能的方法来做到这一点.在我将使用的功能世界中map …
构建说明使用CMake。我不是CMake的专家。我所在的Windows系统具有:
我已经尝试了CMake变量/选项的所有方法和替代方法:
-DCMAKE_C_COMPILER=... \
-DCMAKE_CXX_COMPILER=... \
-DCMAKE_Fortran_COMPILER=... \
-DCMAKE_MAKE_PROGRAM=... \
-G ...
Run Code Online (Sandbox Code Playgroud)
获得使用MinGW构建ECCODES的机会,但是没有运气。我知道有人会问:“为什么不联系ECMWF?” 简短的答案是,响应时间非常长(月/年)。FAQ页面为空,您不能在其Jira网站(已锁定)上发布问题。
熟悉CMake和MinGW的人是否可以下载.tar.gz,使用MinGW构建ECCODE并告诉我们您如何做?
https://software.ecmwf.int/wiki/display/ECC/ecCodes+Home
https://software.ecmwf.int/wiki/download/attachments/45757960/eccodes-0.13.0-Source.tar.gz?api=v2
在 GNU/Linux 中我会这样做:
PROGPATH=/long/and/complicated/path/to/some/bin
$PROGPATH/program args...
Run Code Online (Sandbox Code Playgroud)
但在 Powershell 中如果我尝试这样做:
$PROGPATH=\long\and\complicated\path\to\some\bin
$PROGPATH\program args...
Run Code Online (Sandbox Code Playgroud)
我得到:
At script.ps1:2 char:...
+ $PROGPATH\program args ...
+ ~~~~~~~~
Unexpected token '\program' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParseException
+ FullyQualifiedErrorId : UnexpectedToken
Run Code Online (Sandbox Code Playgroud)
那么我该如何做这个我知道如何在 bash、Powershell 中做的简单事情呢?
我可以从(各种)模板生成Scala代码吗?
我知道如何在球拍/方案/ Lisp中做到这一点,但在Scala中却不知道。Scala宏可以执行此操作吗?
I want to have a code template where X varies. If I had this code template:
def funcX(a: ArgsX): Try[Seq[RowX]] =
w.getThing() match {
case Some(t: Thing) => w.wrap(t){Detail.funcX(t, a)}
case _ => Failure(new MissingThingException)
}
Run Code Online (Sandbox Code Playgroud)
and tokens Apple and Orange, a macro would take my template, replace the Xs, and produce:
def funcApple(a: ArgsApple): Try[Seq[RowApple]] =
w.getThing() match {
case Some(t: Thing) => w.wrap(t){Detail.funcApple(t, a)}
case _ => Failure(new MissingThingException)
}
def funcOrange(a: ArgsOrange): …Run Code Online (Sandbox Code Playgroud) 我有一个Scala函数 f(s1: String, s2: String): Map[String,String]
我想允许一个用Java编写的同事来调用我正在编写的Java方法:
HashMap<String, String> f(String s1, String s2)
这会调用我的Scala函数.我发现,在Java方面,Scala已经返回了scala.collection.immutable.Map.
如何从中创建Java HashMap?或者我应该做别的事吗?
我正在将Unicode字符写入Log4J2日志.在一台机器上(Windows 8),我在日志中看到了这一点:
2016-08-30 16:44:00.958|English: The quick brown fox jumped over the lazy dog.
2016-08-30 16:44:00.960|German: Falsches Üben von Xylophonmusik quält jeden größeren Zwerg.
2016-08-30 16:44:00.960|Russian 1: ? ????? ??? ??? ?? ??????? ??, ?? ????????? ?????????!
2016-08-30 16:44:00.960|Russian 2: ????? ?? ??? ???? ?????? ??????????? ????? ?? ????? ???.
2016-08-30 16:44:00.960|Chinese: ?????????
2016-08-30 16:44:00.960|Japanese: ??????? ????? ?????? ????? ??????? ????? ??????? ?????
2016-08-30 16:44:00.960|Korean: ??? ? ???? ???
Run Code Online (Sandbox Code Playgroud)
在另一台计算机(Windows Server 2012R2)上,我看到:
2016-08-30 16:50:41.676|English: The quick brown fox jumped over the …Run Code Online (Sandbox Code Playgroud) 我有一个带有纬度/经度刻度的 LeafletJs 地图。但是,此时我想要的是在地图上覆盖一个具有固定行数和列数(例如 19 行和 17 列)的网格,其中构成网格的小矩形在我缩放时不会改变大小在地图上进出。我该怎么做?
我得到了一个A需要从另一个项目访问类文件的项目B。更准确地说,A只需要从树的B/ejb/C/src部分编译的类B/:
B/ejb/C/src/com/company/admin/Foo.java
B/ejb/C/src/com/company/admin/FooHome.java
B/ejb/C/src/com/company/admin/FooBean.java
B/ejb/NOTNEEDED/src/com/company/data/...
Run Code Online (Sandbox Code Playgroud)
A之前拥有该项目的人使用 JBuilder 并包含在源定义中指向并行项目的B/ejb/C/src. 该A项目构建了一个 jar,其中包含从另一个树编译的类。我试图弄清楚如何使用 Gradle 做到这一点。我想B/build.gradle在B项目中创建一个从这些源编译B-C-version.jar的.class文件:
B/ejb/C/src/com/company/admin/Foo.java
B/ejb/C/src/com/company/admin/FooHome.java
B/ejb/C/src/com/company/admin/FooBean.java
Run Code Online (Sandbox Code Playgroud)
然后我将发布到 Maven 并从A项目访问。
即,B-C-version.jar理想情况下只有这些类:
com/company/admin/Foo.class
com/company/admin/FooHome.class
Run Code Online (Sandbox Code Playgroud)
但如果B-C-version.jar有这些类:
com/company/admin/*.class
Run Code Online (Sandbox Code Playgroud)
那也可以。我怎样才能build.gradle在B项目中使用 a 来做这样的事情?
scala ×3
.net ×1
akka ×1
akka-stream ×1
build.gradle ×1
c# ×1
c#-4.0 ×1
cmake ×1
emacs ×1
gradle ×1
java ×1
leaflet ×1
log4j2 ×1
logging ×1
mingw-w64 ×1
mingw32 ×1
powershell ×1
scala-macros ×1
syntax ×1
utf-8 ×1