小编pro*_*eek的帖子

如何查看我使用的是哪种Emacs?

我的Mac上有两个Emacs(Aquamacs和基于文本的Emacs).

在我的.emacs文件中,我可以检查我是否正在使用Aquamacs ...

(boundp 'aquamacs-version)
Run Code Online (Sandbox Code Playgroud)

如何检查我是否使用基于文本的emacs?

编辑

JürgenHötzel的答案有效,但对于基于文本的emacs,使用

(unless (null window-system) ...) 
Run Code Online (Sandbox Code Playgroud)

更好,因为(window-system)没有定义.

emacs

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

打破Python中的嵌套(双)循环

我使用以下方法来破坏Python中的双循环.

for word1 in buf1:
    find = False
    for word2 in buf2:
        ...
        if res == res1:
            print "BINGO " + word1 + ":" + word2
            find = True
    if find:
        break
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法来打破双循环?

python nested-loops

38
推荐指数
4
解决办法
5万
查看次数

可以从Xcode项目中删除Prefix.pch文件吗?

Xcode项目自动生成Prefix.pch文件.当我删除此文件并尝试构建时,我遇到了构建错误,说" * _Prefix.pch"文件丢失了.

  • Prefix.pch文件是否必须使用Xcode进行编译?
  • 如何在没有Prefix.pch文件的情况下构建?

xcode precompiled-headers

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

install_name_tool更新可执行文件以在Mac OS X中搜索dylib

我有一个安装在其中的动态libray libtest.dylib /PATH/lib,以及一个使用安装的dylib的执行二进制文件myapp /PATH/bin.

我可以myapp按如下方式运行以找到dylib(在Mac OS X上使用DYLD_LIBRARY_PATH是否可以?并且,使用它的动态库搜索算法是什么?):

DYLD_LIBRARY_PATH="/PATH/lib" myapp 
Run Code Online (Sandbox Code Playgroud)

我想我可以install_name_tool用来更新库和可执行文件,以便可以使用rpath找到库.我在这篇文章中使用了提示 - 如何在dylib中指定rpath?.

在lib中,我执行了这个命令来添加rpath.

install_name_tool -id "@rpath/libtest.dylib" libtest.dylib
install_name_tool -add_rpath "@executable_path/../lib/" libtest.dylib
Run Code Online (Sandbox Code Playgroud)

在bin中,我执行了install_name_tool -add_rpath "@executable_path/../lib/" myapp.

但是,当我myappbin目录中执行时,我有错误消息.

dyld: Library not loaded: libtest.dylib
  Referenced from: /PATH/bin/./myapp
  Reason: image not found
Trace/BPT trap: 5
Run Code Online (Sandbox Code Playgroud)

otool -l myapp 显示rpath在myapp中正确更新.

Load command 16
          cmd LC_RPATH
      cmdsize 40
         path @executable_path/../lib/ (offset 12)
Run Code Online (Sandbox Code Playgroud)

libtest.dylib也是如此

Load command 13
          cmd LC_RPATH
      cmdsize 40
         path …
Run Code Online (Sandbox Code Playgroud)

macos path dylib ld dyld

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

Emacs中的"Open Recent"

Emacs是否有能力打开最近的文件(例如文件>打开最近的菜单...)?

我知道OS X的Aquamacs具有此功能.但它是否适用于所有Emacs版本?

emacs

37
推荐指数
4
解决办法
9172
查看次数

对于不纯的函数式语言OCaml,"let rec"是什么原因?

Real World OCaml一书中,作者let rec阐述了OCaml 用于定义递归函数的原因.

OCaml主要出于技术原因区分非递归定义(使用let)和递归定义(使用let rec):类型推断算法需要知道一组函数定义何时是相互递归的,并且由于不适用于a的原因像Haskell这样的纯语言,必须由程序员明确标记.

let rec在纯函数式语言中强制执行的技术原因是什么?

recursion ocaml haskell functional-programming

37
推荐指数
5
解决办法
2881
查看次数

Java和C#,它们有多接近?

我一直在使用C/C++和Python,但我现在看到很多新的编程书籍都使用Java或C#作为示例.

我认为我暂时不会使用Java或C#,但我想我必须学习其中一种语言(或两种语言)才能阅读/理解这些书籍.

  • Java和C#有多相似?如果我学习Java,学习C#几乎是免费的吗?或相反亦然?
  • 如果我只选择两种语言中的一种,那会更好吗?哪个在编程语言方面有更广泛的覆盖面?

c# java comparison

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

如何在重组文本中注释字符串?

HTML的评论是<!-- .. -->,如何使用重组文本制作此注释块?换句话说,如何在重组文本中注释掉一些行?

html restructuredtext

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

如何使用git(git config --global)?

GIT实用指南有以下内容"Git使用两者来计算提交ID-SHA-111哈希 - 它标识每个提交." 在第21页.

在第22页中,我可以使用以下命令"配置Git以了解您的身份".

git config --global smcho "Your Name"

当我运行它时,我收到以下错误消息.

error: key does not contain a section: smcho

这有什么问题?我想这与SHA-111哈希有关,但我不知道如何让它与git一起使用.

添加

我认为user.name将被替换为我的名字,而不是部分/参数结构名称.更改后,它可以正常工作.

git config --global user.name "Your Name"

git configuration

35
推荐指数
3
解决办法
5万
查看次数

在g ++中"警告:使用旧式演员"

可能重复:
什么时候应该使用static_cast,dynamic_cast和reinterpret_cast?

有了这个C++代码,

char* a = (char*) b;
Run Code Online (Sandbox Code Playgroud)

我被警告warning: use of old-style cast.

什么是新式演员?

c++ casting g++

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