小编npo*_*avs的帖子

让Emacs ansi-term和Zsh发挥得很好

我一直在尝试在我的emacs会话中使用Zsh,而没有emacs重新映射所有Zsh键.我发现ansi-term对此很好,但是,我仍然有一些问题.我输出了很多垃圾字符,我能够解决它:

## Setup proper term information for emacs ansi-term mode
[[ $TERM == eterm-color ]] && export TERM=xterm
Run Code Online (Sandbox Code Playgroud)

但一切仍然不能很好地完成.现在我无法在屏幕外绘制输出,特别是在使用Cr等搜索时.

有什么想法吗.其他人有Zsh + Ansi术语正常工作?

emacs shell zsh

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

为什么C字符串文字的最大长度与max char []不同?

澄清:鉴于字符串文字可以重写为const char[](见下文),在文字上施加的最大长度低于 char[]s,这只是语法上的不便.为什么C标准鼓励这个?


C89标准对字符串文字有翻译限制:

字符串文字或宽字符串文字中的509个字符(连接后)

char数组没有限制; 也许

对象中的32767个字节(仅限托管环境中)

适用(我不确定什么对象或托管环境的意思),但无论如何它是一个更高的限制.

我的理解是字符串文字等同于包含字符的char数组,即:它总是可以重写这样的东西:

const char* str = "foo";
Run Code Online (Sandbox Code Playgroud)

进入这个

static const char __THE_LITERAL[] = { 'f', 'o', 'o', '\0' };
const char* str = __THE_LITERAL;
Run Code Online (Sandbox Code Playgroud)

那么为什么文字如此严格限制呢?

c standards

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

Fastai学习者未加载

所以我试图使用以下方式加载模型:

learn = create_cnn(data, models.resnet50, lin_ftrs=[2048], metrics=accuracy) 
learn.clip_grad();
learn.load(f'{name}-stage-2.1')
Run Code Online (Sandbox Code Playgroud)

但我收到以下错误

RuntimeError: Error(s) in loading state_dict for Sequential:
size mismatch for 1.8.weight: copying a param with shape torch.Size([5004, 2048]) from checkpoint, the shape in current model is torch.Size([4542, 2048]).
size mismatch for 1.8.bias: copying a param with shape torch.Size([5004]) from checkpoint, the shape in current model is torch.Size([4542]).
Run Code Online (Sandbox Code Playgroud)

唯一不同的是,我添加了stage-2.1模型中不存在的随机验证拆分,当我删除该拆分并且没有经过验证的集时,因为stage-2.1经过训练的一切进展顺利。

发生了什么?

model machine-learning resnet pytorch fast-ai

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

将模式附加到默认的diff头模式(diff.cpp.xfuncname)

我想扩展(而不是替换)C文件的默认diff头模式。根据这篇文章

您将不得不提取内置值(令人烦恼的是,即使不查看源代码也无法获得内置值),然后在配置文件中重复执行。

但是,内置值在C中看起来像这样:

PATTERNS("cpp",
     /* Jump targets or access declarations */
     "!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\n"
     /* functions/methods, variables, and compounds at top level */
     "^((::[[:space:]]*)?[A-Za-z_].*)$",
     /* -- */
     "[a-zA-Z_][a-zA-Z0-9_]*"
     "|[-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*"
     "|[-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->\\*?|\\.\\*"),
Run Code Online (Sandbox Code Playgroud)

我不确定如何在.gitconfig文件中呈现。

我试过了

xfuncname = "(!^[ \t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\n)|(^((::[[:space:]]*)?[A-Za-z_].*)$\n)|([a-zA-Z_][a-zA-Z0-9_]*)|([-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*)|([-+*/<>%&^|=!]=|--|\\+\\+|<<=?|>>=?|&&|\\|\\||::|->\\*?|\\.\\*)"
Run Code Online (Sandbox Code Playgroud)

这给了我fatal: Invalid regexp to look for hunk header: (!^[ ]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])跑步的时间git diff

反斜杠加倍也不起作用:

xfuncname = "(!^[ \\t]*[A-Za-z_][A-Za-z_0-9]*:[[:space:]]*($|/[/*])\\n)|(^((::[[:space:]]*)?[A-Za-z_].*)$\\n)|([a-zA-Z_][a-zA-Z0-9_]*)|([-+0-9.e]+[fFlL]?|0[xXbB]?[0-9a-fA-F]+[lLuU]*)|([-+*/<>%&^|=!]=|--|\\\\+\\\\+|<<=?|>>=?|&&|\\\\|\\\\||::|->\\\\*?|\\\\.\\\\*)"
Run Code Online (Sandbox Code Playgroud)

没有错误,但diff头为空,即,它不匹配任何内容。

git

5
推荐指数
0
解决办法
82
查看次数

如何检测mingw中命令行参数的字符编码

假设它们是 ISO-8859-15(Window-1252?)是否安全,或者我可以调用一些函数来查询它吗?最终目标是转换为 UTF-8。


背景:

出现此问题所描述的问题是因为 XMLStarlet 假定其命令行参数是 UTF-8。在 Windows 下,它们似乎实际上是 ISO-8859-15(Window-1252?),或者至少在开头添加以下内容main使事情正常工作:

char **utf8argv = malloc(sizeof(char*) * (argc+1));
utf8argv[argc] = NULL;

{
    iconv_t windows2utf8 = iconv_open("UTF-8", "ISO-8859-15");
    int i;
    for (i = 0; i < argc; i++) {
        const char *arg = argv[i];
        size_t len = strlen(arg);
        size_t outlen = len*2 + 1;
        char *utfarg = malloc(outlen);

        char *out = utfarg;
        size_t ret = iconv(windows2utf8,
            &arg, &len,
            &out, &outlen);

        if (ret < 0) {
            perror("iconv");
            utf8argv[i] = …
Run Code Online (Sandbox Code Playgroud)

c windows unicode mingw

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

标签 统计

c ×2

emacs ×1

fast-ai ×1

git ×1

machine-learning ×1

mingw ×1

model ×1

pytorch ×1

resnet ×1

shell ×1

standards ×1

unicode ×1

windows ×1

zsh ×1