小编tij*_*agi的帖子

Make*Buffer List*始终以水平分割显示

我知道Emacs试图成为知识分子并根据窗口的哪个维度更大来打开辅助缓冲区,因此如果当前宽度大于高度,它可能出现在垂直分割窗口中,否则会出现在水平分割中.

但是我更喜欢它总是在水平分割中打开该列表,因为当缓冲区被放置在垂直分割中时,我看不到长路径.我怎样才能做到这一点?

emacs

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

用反斜杠分隔行时是否可以使用注释?

我想像这样嵌入评论

ls -l \
-a \
# comment here
-h \
-t . 
Run Code Online (Sandbox Code Playgroud)

但这似乎是不可能的。也许存在其他变体?将评论放在反斜杠之后或以反斜杠结束评论无济于事。

bash shell sh

7
推荐指数
3
解决办法
649
查看次数

为什么`gcc -Q -march = corei7-avx -help = target`在哪?

如果我们查询-march=native扩展到的内容,结果似乎应该如此

$ gcc -Q -march=native --help=target | grep -E '^\s+-.*(sse|march)'
  -march=                           corei7-avx
  -mno-sse4                         [disabled]
  -msse                             [enabled]
  -msse2                            [enabled]
  -msse2avx                         [disabled]
  -msse3                            [enabled]
  -msse4                            [enabled]
  -msse4.1                          [enabled]
  -msse4.2                          [enabled]
  -msse4a                           [disabled]
  -msse5                            
  -msseregparm                      [disabled]
  -mssse3                           [enabled]
Run Code Online (Sandbox Code Playgroud)

但是如果直接指定了体系结构,gcc会删除它会启用的SSE标志native,为什么呢?

 $ gcc -Q -march=corei7-avx --help=target | grep -E '^\s+-.*sse'
  -mno-sse4                         [enabled]
  -msse                             [disabled]
  -msse2                            [disabled]
  -msse2avx                         [disabled]
  -msse3                            [disabled]
  -msse4                            [disabled]
  -msse4.1                          [disabled]
  -msse4.2                          [disabled]
  -msse4a                           [disabled]
  -msse5                            
  -msseregparm                      [disabled]
  -mssse3                           [disabled]
Run Code Online (Sandbox Code Playgroud)

-march=corei7-avx但是,编译显示它们将被启用.

$ echo | gcc -march=corei7-avx -dM …
Run Code Online (Sandbox Code Playgroud)

c gcc

6
推荐指数
1
解决办法
1060
查看次数

如何在bash中创建RETURN陷阱保留返回码?

下面是我正在编写的脚本的简化方案.程序必须以不同的方式获取参数,因此可以对多个函数进行精细划分.

问题是来自深层函数的返回值的链式加载在陷阱上中断,其中要检查结果以显示消息.

#! /usr/bin/env bash

check_a_param() {
    [ "$1" = return_ok ] && return 0 || return 3
}

check_params() {
    # This trap should catch negative results from the functions
    #   performing actual checks, like check_a_param() below.
    return_trap() {
        local retval=$?
        [ $retval -ne 0 ] && echo 'Bad, bad… Dropping to manual setup.'
        return $retval
    }
    # check_params can be called from different functions, not only
    #   setup(). But the other functions don’t care about the return value …
Run Code Online (Sandbox Code Playgroud)

linux bash bash-trap

6
推荐指数
1
解决办法
1946
查看次数

GNU Emacs-23.3.1不会加载CEDET-1.0

我刚刚更新了我的emacs并在字节码中重新整理了一些扩展.我也通过emacs-updater更新了一些软件包,比如subversion,就像我在更新后建议的那样.但现在我得到了

Symbol's value as variable is void: cedet-menu-map
Run Code Online (Sandbox Code Playgroud)

还有更多的乐趣:如果我们削减线路装载cedet.el,欧洲央行说

    error: ECB 2.40 - Error: ECB can only be used with 
cedet [1.0pre6, 1.0.9]! Please install it and restart Emacs!
Run Code Online (Sandbox Code Playgroud)

CEDET-1.0.9在哪里?如果是,它在哪里?

操作系统:Gentoo

UPD:

使用包app-emacs/ecbapp-emacs/cedet解决了这个问题.

emacs cedet

5
推荐指数
1
解决办法
4256
查看次数

如何通过ssh(gitosis)访问git repo时包含ssh private rsa密钥?

这时我通过gitosis添加了一个git repo.我使用的手册是http://scie.nti.st/2007/11/14/hosting-git-repositories-the-easy-and-secure-way

  1. 我可以克隆它并通过私有和公共密钥(在gentoo上)通过ssh auth推送它,但是使用Git Extensions的Windows用户不能.SSH密钥放在$ HOME/.ssh中,ssh要求输入密码.也没有密码,也没有密码(来自私人ssh密钥)不匹配.

  2. Redmine需要一个裸仓库,所以我克隆了我本地机器上的gitosis回购并将其移动到服务器(redmine + git),然后尝试同步如此显示 http://www.redmine.org/projects/redmine/wiki/HowTo_keep_in_sync_your_git_repository_for_redmine 但它再次要求输入密码!当然我没有使用apache自己的ssh密钥来auth gitosis = _ =(Apache是​​redmine bare repo的所有者,因为它通过http auth访问它)

无论如何,问题是如何在访问gitosis时使用文件中的私有ssh密钥?

===

部分解决了! ssh-keygen -t rsa生成密钥,其名称正好是id_rsaid_rsa.pub.如果你跑,ssh -vvv gitosis@your-server.com你应该看到类似的东西

debug1: Authentications that can continue: publickey,keyboard-interactive
…
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering RSA public key: user@domain-user
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Trying private key: /home/user/.ssh/id_rsa
debug3: no such …
Run Code Online (Sandbox Code Playgroud)

git ssh gitosis gitolite git-extensions

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

递归正则表达式不起作用

我工作的字符串看起来像这样:

abc {def ghi {jkl mno} pqr stv} xy z
Run Code Online (Sandbox Code Playgroud)

我需要在标签中放置数字括号,所以它应该是这样的

abc <tag>def ghi <tag>jkl mno</tag> pqr stv</tag> xy z
Run Code Online (Sandbox Code Playgroud)

我试过了

'#(?<!\pL)\{  ( ([^{}]+) | (?R) )*  \}(?!\pL)#xu'
Run Code Online (Sandbox Code Playgroud)

但我得到的只是<tag>xy z</tag>.请帮忙,我做错了什么?

php regex

4
推荐指数
1
解决办法
1066
查看次数

Tilde扩展报价

我编写了一个脚本,必须在用户定义的目录中找到一些文件,这些文件可能包含波形符(因此,它可能有user_defined_directory='~/foo').构造看起来像

found_files=$(find "$user_defined_directory" -type f … )
Run Code Online (Sandbox Code Playgroud)

我使用引号来覆盖该路径中的可能空格,但根据手册页,波形扩展在引号中不起作用.我知道:运营商可能会进行这种扩展,但我无法弄清楚如何在这里使用它.

'user-defined-directory'取自用户$ HOME目录中的另一个配置文件.它不是作为参数传递给我的脚本,而是从我编写的脚本中的另一个配置中解析它.

bash

4
推荐指数
2
解决办法
3968
查看次数

标签 统计

bash ×3

emacs ×2

bash-trap ×1

c ×1

cedet ×1

gcc ×1

git ×1

git-extensions ×1

gitolite ×1

gitosis ×1

linux ×1

php ×1

regex ×1

sh ×1

shell ×1

ssh ×1