我知道我可以打开一个新的框架M+xgdb.但只是在新框架M+xgdb中gdb执行和执行会好得多.
gdb-many-windows当我运行它时销毁原始窗口布局,当我杀死它时它无法恢复布局.所以我想在一个新的框架中运行它并关闭那个框架.
更新:我用(setq gdb-many-windows t).如果我调用gdb它,它会gdb-many-windows自动使用布局.
如果我在 Julia (p_1,...,p_n) 中声明了一些点。kronecker delta (f_i(p_j)=1 if i=j和f_i(p_j)=0 if i != j)是否有一些函数或算法
这将非常有帮助。
非常感谢。
当我C-c c在缓冲区上按下以下代码时,Emacs会抱怨Invalid function: (select-current-line).为什么?
(defun select-current-line ()
"Select the current line"
(interactive)
(end-of-line) ; move to end of line
(set-mark (line-beginning-position)))
(defun my-isend ()
(interactive)
(if (and transient-mark-mode mark-active)
(isend-send)
((select-current-line)
(isend-send)))
)
(global-set-key (kbd "C-c c") 'my-isend)
Run Code Online (Sandbox Code Playgroud)
并不重要,但对于那些感兴趣的人来说,isend-send在这里定义.
我的设置:
emacs -nw)ansi-term)假设我正在浏览shell中的远程服务器并找到我想要编辑的文件.是否有命令将其作为并行缓冲区/窗口打开?
我知道从shell打开文件的唯一方法是emacs -nw再次执行,这不太方便,因为a)我没有保持shell打开,b)它实际上是一个不同的Emacs会话,所以例如"yank"缓冲区"是不同的.
编辑:如果有一个不同的/更好的方式来使用Emacs的远程服务器,我只是感兴趣; 这就是我想要做的.
使用 Julia 的 Test 包,如何创建@testset在运行时引用值的 s?
例如我有
test_data = [
(model="a",datapath="models/a.json"),
(model="b",datapath="models/b.json"),
...
]
Run Code Online (Sandbox Code Playgroud)
我想这样做:
@testset "models" begin
for test in test_data
@testset test.model begin
# test range of values/functions here
end
end
end
Run Code Online (Sandbox Code Playgroud)
但是我收到这样的错误,我认为这是因为我试图在运行时定义测试集名称。
ERROR: LoadError: LoadError: LoadError: Unexpected argument test.model to @testset
Stacktrace:
[1] error(::String) at .\error.jl:33
[2] parse_testset_args(::Tuple{Expr}) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Test\src\Test.jl:1244
[3] testset_beginend(::Tuple{Expr,Expr}, ::Expr, ::LineNumberNode) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Test\src\Test.jl:1087
[4] @testset(::LineNumberNode, ::Module, ::Vararg{Any,N} where N) at D:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.5\Test\src\Test.jl:1079
[5] include(::String) at .\client.jl:457
[6] top-level scope at C:\MyPackage\runtests.jl:7
[7] include(::String) …Run Code Online (Sandbox Code Playgroud) 任何人都可以帮助我使用此代码:
struct GenericPoint{T<:Real}
x::T
y::T
end
Run Code Online (Sandbox Code Playgroud)
<:in{T<:Real}在Julialang中是什么意思?
为了帮助我的调试(也为了更好地理解 Julia 宏的工作原理),我试图定义一个简单的宏,用“进入”和“离开”通知环绕代码块。这是我到目前为止想出的:
macro dbg(block_title, expr)
quote
title = $block_title
println("Entering $title")
$expr
println("Leaving $title")
end
end
Run Code Online (Sandbox Code Playgroud)
乍一看,它似乎做我想要的:
julia> @dbg "first test" begin
println("does it work?")
end
Entering first test
does it work?
Leaving first test
Run Code Online (Sandbox Code Playgroud)
然而,一旦涉及到变量,就没有任何作用了,我得到
UndefVarError了所有变量的访问。看起来宏内部和外部的范围是不同的:
julia> @dbg "initialization" begin
foo = rand(10)
println("foo = ", foo)
end
Entering initialization
foo = [0.9178016919066918, 0.6004694971609528, 0.5294790810682284, 0.04208146400653634, 0.09271603217172952, 0.2809448815925, 0.68236281020963, 0.8313876607106496, 0.07484095574744898, 0.14099531301938573]
Leaving initialization
julia> foo
ERROR: UndefVarError: foo not defined
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?