小编quo*_*tor的帖子

Ido模式太聪明了,我能不能完成文件名?

我的问题:我启用了Ido模式,我想编辑(例如).emacs我的主目录中的文件.我没有.emacs文件,但我确实有.emacs.d,所以ido假设我想进入目录C-x C-f .emacs RET.

我一直试图解决这个问题至少几个星期,我有几个解决办法,但我真的不想做任何疯狂的事情.

emacs ido-mode

89
推荐指数
1
解决办法
6025
查看次数

是否有可能暂时禁用Postgres中的索引?

我在一张桌子上有一个我想暂时禁用的索引,但我找不到任何文件表明这是可能的.

原因:我有一个索引,可能会导致与其设计加速的任何查询无关的查询出现问题.这是一个新的索引,整个系统自推出以来似乎较慢.我只是希望能够可靠地消除它作为罪魁祸首,这似乎是最简单的方法,其他解决方案建议,以及更好的问题建议,也是受欢迎的.

postgresql debugging indexing performance

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

点不要选择自定义安装cmdclass

所以我找到 了我的确切问题的答案,但由于某种原因它不起作用:

$ cat /tmp/testinstall/setup.py:

from setuptools.command.install import install

from setuptools import setup


class verifying_install(install):
    def run(self):
        print "running........"
        install.run(self)
        print "verifying........"


setup(name='test',
      version='1',
      py_modules=['test'],
      include_package_data=True,
      zip_safe=True,
      cmdclass={'install': verifying_install}
)
Run Code Online (Sandbox Code Playgroud)

但是,即使setup.py install工作::

?  /tmp/testinstall
$ mktmpenv && cd -
This is a temporary environment. It will be deleted when you run 'deactivate'.

(5bc7db7ca1b34ec5)?  /tmp/testinstall
$ python setup.py install
running install
running........
running build
running build_py
creating build
creating build/lib.linux-x86_64-2.7
copying test.py -> build/lib.linux-x86_64-2.7
running egg_info …
Run Code Online (Sandbox Code Playgroud)

python pip

24
推荐指数
3
解决办法
2973
查看次数

是否有Pythonic方法来关闭循环变量?

我刚刚遇到了Eric Lippert关于通过SO 认为有害的循环变量Closing,并且在经过实验之后,意识到在Python中存在同样的问题(并且更难以绕过).

>>> l = []
>>> for r in range(10):
...   def foo():
...      return r
...   l.append(foo)
...
>>> for f in l:
...   f()
...
9
9
9
# etc
Run Code Online (Sandbox Code Playgroud)

并且,标准的C#解决方法不起作用(我假设因为Python中引用的性质)

>>> l = []
>>> for r in range(10):
...   r2 = r
...   def foo():
...      return r2
...   l.append(foo)
...
>>> for f in l:
...   f()
...
9
9
9
# etc
Run Code Online (Sandbox Code Playgroud)

我认识到这在Python中并不是一个问题,它一般强调非闭包对象结构,但我很好奇是否有一种明显的Pythonic方法来处理这个问题,或者我们是否必须采用JS的路径嵌套函数调用实际创建新变量?

>>> l = []
>>> for …
Run Code Online (Sandbox Code Playgroud)

python closures for-loop

20
推荐指数
1
解决办法
1001
查看次数

是否有postgres CLOSEST运营商?

我正在寻找一些东西,如下表:

| id | number |
|  1 |     .7 |
|  2 |   1.25 |
|  3 |   1.01 |
|  4 |    3.0 |
Run Code Online (Sandbox Code Playgroud)

查询SELECT * FROM my_table WHERE号码CLOSEST(1)将返回第3行.我只关心数字.现在我有一个程序只是循环遍历每一行并进行比较,但我认为信息应该可以从b树索引获得,所以这可能是一个内置的,但我找不到任何文件表明它确实如此.

sql postgresql

15
推荐指数
3
解决办法
8625
查看次数

在nose或pytest中收集以编程方式生成的测试套件的好方法

说我有一个像这样的测试套件:

class SafeTests(unittest.TestCase):
    # snip 20 test functions

class BombTests(unittest.TestCase):
    # snip 10 different test cases
Run Code Online (Sandbox Code Playgroud)

我目前正在做以下事情:

suite = unittest.TestSuite()
loader = unittest.TestLoader()
safetests = loader.loadTestsFromTestCase(SafeTests)
suite.addTests(safetests)

if TARGET != 'prod':
    unsafetests = loader.loadTestsFromTestCase(BombTests)
    suite.addTests(unsafetests)


unittest.TextTestRunner().run(suite)
Run Code Online (Sandbox Code Playgroud)

我有一个重大问题,一个有趣的观点

  • 我想使用nose或py.test(doest并不重要)
  • 我有大量不同的应用程序通过入口点暴露这些测试套件.

    我希望能够在所有已安装的应用程序中聚合这些自定义测试,因此我不能使用一个聪明的命名约定.我并不 特别关心通过入口点暴露这些内容,但我 确实关心能够在站点包中的应用程序之间运行测试.(不仅仅导入......每个模块.)

关心维持当前的依赖性 unittest.TestCase,摧毁依赖性实际上是一个目标.


编辑这是为了确认@ Oleksiy关于传递args的观点 nose.run实际上与一些警告有关.

事情工作:

  • 传递所有想要执行的文件(这很奇怪)
  • 传递所有想要执行的模块.(这可能不执行任何操作,错误操作或执行太多操作.可能是0,1或者许多有趣的情况?)
  • 在目录之前传递模块:目录必须先到,否则你将得到重复的测试.

这种脆弱是荒谬的,如果你有改进它的想法我欢迎评论,或者我设置了 一个github回购与我的实验试图让这个工作.

除此之外,以下工作,包括获取安装到site-packages中的多个项目:

#!python
import importlib, os, sys
import nose

def …
Run Code Online (Sandbox Code Playgroud)

python nose pytest

9
推荐指数
1
解决办法
4300
查看次数

在emacs中创建别名?

我有一个emacs的副本,我在拇指驱动器的几台不同的(Windows)计算机上使用,我想知道是否有可能在emacs中创建一些等同于bash别名或符号链接的东西?我可以在find-file中使用的东西是我正在寻找的主要内容,所以例如:C-f <some link>会带我到某个地方.目前我每次到新计算机时都要添加一个新的defun,这只是一种痛苦,我会发誓我已经在某个地方看过这个,但几个月的谷歌搜索都没有发现.

我现在得到的是:

(defun go-awesome ()
   "Find my way to my work home"
   (interactive)
   (find-file "c:/cygwin/home/awesome"))
Run Code Online (Sandbox Code Playgroud)

但是,如果仅仅访问一个我经常访问半文件的文件,那就会让人感觉有些过分和过时.并且需要花费很多精力来设置新文件.

但是,在我看来,它最大的问题是它不适合我的工作流程.当我想访问我经常做的文件时C-x C-f,如果我意识到"嘿,我在工作",那么我必须这样做C-g M-x go-awesome.也许更清楚的是,如果我说我希望能够做一些相当于ln -s /some/awesome/dir内部的emacs,而不是内置到操作系统中,这样C-x C-f ~/awesome/some/sub/dir就可以在Windows或其他任何地方工作.

windows emacs elisp

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

配置flymake以使用临时文件的特定目录?

我一直在查看文档并尝试定制和各种各样的东西,但无论我做什么,似乎Flymake总是将其临时文件放在原始文件所在的任何目录中.

这是一个大问题的主要原因是因为当我使用gdb单步执行我的程序时,有时我会进入STL文件或非用户目录中的其他文件.经常这会导致我的gdb进程因某种原因停止响应,这意味着我必须一直回到开头并全局禁用Flymake或者希望我不必在dir中执行另一个查找文件我的emacs进程没有写访问权限.

是否有一种很好的方法让flymake始终生成其临时文件,例如~/.emacs.d/tmp

emacs customization

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

Git似乎不想将本地引用保留为origin/master

首先:为问题标题道歉,我实际上不知道问题是什么,所以我不知道如何询问它.

我想用上游大师来区分我的主人(应该是origin/master,基于我的遥控器的设置方式).

但是:我在当地工作了一段时间后,原产地被放在那里,所以它只是名义上的"起源".那就是:我有一个当地的回购,把它放到一个gitolite设置,然后告诉我当地的git称它为原产地.

这些是症状:

$ git diff master orgin/master
fatal: ambiguous argument 'orgin/master': unknown revision or path not in the working tree.

$ git diff master origin/master --
fatal: bad revision 'origin/master'
Run Code Online (Sandbox Code Playgroud)

嗯.

$ git remote -v
origin  git@example.com:example (fetch)
origin  git@example.com:example (push)
Run Code Online (Sandbox Code Playgroud)

好吧,那看起来不错.

$ git branch -a
... # nothing from origin
Run Code Online (Sandbox Code Playgroud)

嗯.

$ git fetch -a origin
From example.com:example
* branch            HEAD       -> FETCH_HEAD
Run Code Online (Sandbox Code Playgroud)

我不知道这是否正确.它看起来很有效,但git diff master origin/master仍然失败,并且:

$ git branch --track omaster origin/master …
Run Code Online (Sandbox Code Playgroud)

git

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

如何使错误链错误与失败错误兼容?

给出以下代码:

extern crate dotenv; // v0.11.0
#[macro_use]
extern crate failure; // v0.1.1

#[derive(Debug, Fail)]
#[fail(display = "oh no")]
pub struct Error(dotenv::Error);
Run Code Online (Sandbox Code Playgroud)

由于error-chain(v0.11,最新版本)不保证其包装错误Sync(打开PR以解决问题)这一事实我得到一个错误,说明Sync没有实现dotenv::Error:

error[E0277]: the trait bound `std::error::Error + std::marker::Send + 'static: std::marker::Sync` is not satisfied
 --> src/main.rs:5:17
  |
5 | #[derive(Debug, Fail)]
  |                 ^^^^ `std::error::Error + std::marker::Send + 'static` cannot be shared between threads safely
  |
  = help: the trait `std::marker::Sync` is not implemented for `std::error::Error + std::marker::Send + 'static` …
Run Code Online (Sandbox Code Playgroud)

error-handling rust

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