小编Pan*_*ood的帖子

如何使用Brew安装最新版本的Node

NodeJs的最新版本现在是0.4.1

现在命令brew install node,安装0.2.6 - 这是不理想的.我想要0.4.1

我已经查看了brew 的命令列表并尝试过brew install --HEAD node

但是安装节点0.5-pre.

为什么brew没有安装正确的版本,我怎么能强迫它找到正确的版本?

在这个阶段,看起来下载src并手动安装它实际上会更容易.但我想知道Brew发生了什么.

macos homebrew

144
推荐指数
11
解决办法
19万
查看次数

.gitignore忽略所有文件,然后递归地允许*.foo

已经有几个类似的问题,但没有一个答案对我有用.

我想忽略我的存储库下面的文件夹中的所有内容,除了带有*.foo的文件

(如果有人想知道如何证明这一点 - 我实际上正在为我的所有"逻辑"项目 - mac上的音乐软件 - 创建一个git存储库 - 但我只想存储实际的项目文件*.logic)

我要拼出来,所以我们都在同一个盘子里.这是我从头开始做的事情:

建立:

mkdir temp
cd temp
mkdir testdir
cd testdir
touch include.foo
touch dontinclude.bad
cd..
git init
touch .gitignore
Run Code Online (Sandbox Code Playgroud)

将其粘贴到.gitignore中

# Ignore all
/*

# But not these files...
!.gitignore
!*.foo
Run Code Online (Sandbox Code Playgroud)

git状态

唯一没有跟踪的文件是.gitignore

如果我输入'git add'. - 没有变化,只看到.gitignore,我的2个文件被忽略.

为什么这不起作用,你怎么能改变上面的程序使它工作?

这是我从中获取.gitignore文件的极其相似的问题.我正在使用git --version 1.7.7(也试过1.7.3) - .gitignore忽略所有文件,然后递归地允许某种类型的文件

git

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

为什么Rake不能连续调用多个任务?

我有一个Rake任务,我在下面简化了.我在Windows上使用Ruby 1.9.

也许您想猜测下面调用Rake任务"list_all_levels"的结果?它应该是:

"Hello level 1"
"Hello level 2"
"Hello level 3"
Run Code Online (Sandbox Code Playgroud)

但由于我不知道的原因,它只打印"Hello level 1"然后停止.

也就是说,它始终只调用第一个任务.如果我更改第一行以传递arg"42",它将打印"Hello level 42"然后停止.

我想知道为什么它不会调用任务3次并打印所有3行?有没有办法让它按照我的期望工作?

task :list_all_levels => [] do
    Rake::Task[:list].invoke 1
    Rake::Task[:list].invoke 2
    Rake::Task[:list].invoke 3
end

task :list, [:level] => [] do |t, args|
    puts "Hello level #{args.level}"
end
Run Code Online (Sandbox Code Playgroud)

ruby rake task

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

在coffeescript中编写jquery插件 - 如何获取"(function($)"和"(jQuery)"?

我在coffeescript中编写了一个jquery插件,但我不确定如何使函数包装器部分正确.

我的coffeescript从这开始:

$.fn.extend({
    myplugin: ->
        @each ->
Run Code Online (Sandbox Code Playgroud)

哪个用函数包装器创建javascript:

(function() {
  $.fn.extend({
      myplugin: function() {
          return this.each(function() {
Run Code Online (Sandbox Code Playgroud)

但我希望像这样传入'$':

(function($) {
  $.fn.extend({
Run Code Online (Sandbox Code Playgroud)

类似于我的结局......在coffeescript中没有特别的.
我在javascript中得到这个:

})();
Run Code Online (Sandbox Code Playgroud)

但是想这样:

})(jQuery);
Run Code Online (Sandbox Code Playgroud)

有谁知道如何使用coffeescript编译器实现这一目标?或者在coffeescript中完成这项工作的最佳方法是什么?

javascript jquery coffeescript

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

为什么要使用javascript函数包装器(在coffeescript中添加)".call(this)"

当我使用最新的(1.0)咖啡脚本时,一个简单的javascript输出看起来像这样(默认情况下):

(function() {
  var a;
  a = 1;
}).call(this);
Run Code Online (Sandbox Code Playgroud)

是什么.CALL(本)做,哪些是添加它的原因是什么?

javascript coffeescript

31
推荐指数
2
解决办法
6228
查看次数

通过在C#中使用鼠标拖动控件来移动控件

我试图通过拖动它来移动名为pictureBox1的控件.问题是,当它移动时,它会一直从一个位置移动到鼠标周围的另一个位置,但它确实跟着它...这是我的代码.如果你能帮助我,我将非常感激

public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }
    bool selected = false;
    private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
    {
        selected = true;
    }

    private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
    {
        if (selected == true)
        {
            pictureBox1.Location = e.Location;
        }
    }

    private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
    {
        selected = false;
    }

}
Run Code Online (Sandbox Code Playgroud)

c# location picturebox movable mousedown

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

使用继承的 tsconfig 时,TypeScript 编译器找不到类型

我怀疑 tsconfig.json继承是否能正常工作。并且“typeRoots”设置没有正确继承或根本没有继承。

http://www.typescriptlang.org/docs/handbook/tsconfig-json.html

(文件夹结构如下)

web.site -> tsconfig.json
- typings
- node_modules
- scripts
  - ts
  - tests
    - ts -> tsconfig.json (this tsconfig extends/inherits web.site - see contents below)
Run Code Online (Sandbox Code Playgroud)

如果我在我的 web.site 文件夹中运行 tsc 命令,它会找到类型并成功编译。大概是因为它正确使用了typeRoots设置。

如果我在我的测试文件夹中运行 tsc 命令,它找不到任何类型并且无法编译。您可以假设错误只是无法找到它应该在“typings”文件夹中找到的声明的引用。

我可以将相同的文件从测试(失败)复制到根 web.site,然后它成功编译。

显然,它没有正确使用 tsconfig.json 因为给定继承,我已经设置,它应该通过继承的typeRoots设置找到类型。但不是。

我应该忽略继承作为半生不熟的东西并为此使用单独的 tsconfigs 吗?

在 web.site/tsconfig.json 中:

{
"compileOnSave": true,
"compilerOptions": {
    "listFiles": true,
    "removeComments": true,
    "sourceMap": true,
    "module": "es6",
    "moduleResolution": "classic",
    "outDir": "scripts/js",
    "typeRoots": [
        "node_modules/@types",
        "typings"
    ]
},
"include":[ …
Run Code Online (Sandbox Code Playgroud)

typescript typescript2.0

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

如何在XAML中注入转换器

我有一个IValueConverter实现的类,我需要使用我的DI容器(Ninject)注入它.

问题是,在XAML中,没有立即明显的方法来控制Converter对象的实例化.

所以我的XAML包含这样的行:

Source ="{Binding Path = CurrentMessage,Converter = {StaticResource ImagePathConverter}}"

在哪里,将为我创建ImagePathConverter.

我想我可以创建一个"服务定位器"静态类,并调用它来解决我的依赖,改变静态资源的财产"MyServiceLocator.TheImageConverter",但是这让我想呕吐.

我希望这个问题可以通过一些专门针对所提供代码的代码片段来回答 - 也许是一个示例的支持链接.不仅仅是建议看看某个地方.

另外,非常重要的是,假设XAML 没有代码隐藏 - 而且我不能使用它.我正在创建一个皮肤,不希望背后的代码.所以我不能在类构造函数中设置一个类变量并引用它.也许那是不合理的,我还不确定.

wpf xaml dependency-injection

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

Git Rebase似乎已经有效,但所有提交仍然在日志中显示...我处于什么状态?

我想我使用rebase压缩了最后40次提交.我遵循本指南以确保我没有做任何愚蠢的事 - http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html

问题是,我认为我做了一些愚蠢的事.

无法保存(交互式)文本文件,因此似乎rebase失败了,但它给出的消息和下面的一些其他内容表明它可能有效.

不知道我在哪里或做什么(甚至我的名字是什么).这是我做的:

  • 我输入了git rebase -i HEAD~40
  • 我编辑了一个文本文件,通过将所有行改为以"squash"开头,除了顶部之外
  • 我在Windows上,使用EditPad ...文件无法保存!哦,不...(只读/权限?).
  • 我把它保存到一个随机目录.
  • 命令行显示某种成功(不幸的是我丢失了消息).我不知道它如何成功或知道我保存的文件在哪里...

  • git rebase - 继续说"没有进行任何改变?

  • git reflog建议它有效(据我所知至少,'rebase'这个词在最近的40多次提交中显示)例如:

    9992445 HEAD @ {8}:rebase:报告工作

  • 但是跑步git log显示了所有40个提交我刚刚'重新'

这看起来不太好.有谁知道我在哪个州?我是不是很清楚,这是一个僵尸变形吗?

git rebase

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

通过以某个字符串开头的键切片FormCollection

是否有一种很好的linqy方式将a FormCollection分成Dictionary<string,string>只包含那些以某个字符串开头的键?

(这个问题与this->基本相同,但是对于C#/ FormCollection而不是python 通过以某个字符串开头的键来切片字典)

以下是我想出来解决问题的方法:

public ActionResult Save(FormCollection formCollection) {
  var appSettings = new Dictionary<string, string>();
  var appKeys = formCollection.AllKeys.Where(k => k.StartsWith("AppSettings."));
  foreach (var key in appKeys)
  {
      appSettings[key] = formCollection[key];
  }
...
Run Code Online (Sandbox Code Playgroud)

编辑:这段代码的问题在于,我必须多次为不同的StartsWith字符串执行此操作,因此需要创建一个"实用程序"方法来执行上述操作.如果能在一行中读取它会很好:

formCollection.Where(k=>k.Key.StartsWith("AppSettings.");
Run Code Online (Sandbox Code Playgroud)

背景(没有必要解决问题):上下文是asp.net mvc,以及带有动态字典字典的表单.

它也类似于这个问题 - 返回带有前缀的FormCollection项目 - 但不完全相同.

并阅读了这个答案如何从具有复杂键的FormCollection构建C#对象 - 我开始怀疑我是否会更好,甚至不使用表单发布,而是发送JSON代替.

c# asp.net-mvc

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