小编Ler*_*erp的帖子

如何禁用Vim铃声?

我试图在视觉和音频上禁用vim上的错误铃声.但是我不能让他们停下来.

我有以下内容vimrc:

" Disable annoying beeping
set noerrorbells
set vb t_vb=
Run Code Online (Sandbox Code Playgroud)

这不起作用,我想一些插件或其他设置正在重置它所以我再次添加它到我的结束 vimrc,仍然没有运气.

我可以让它关闭的唯一方法是set vb t_vb=在所有内容加载后手动调用.我想我可以通过在plugin/after文件夹中添加一个脚本来模拟这个,但我试图避免这种情况,因为这意味着每当我切换到另一台机器时,我必须设置另一件事.

你可以vimrc在这里看到我的全部内容:https://github.com/lerp/dotfiles/blob/master/vimrc

vim error-suppression

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

仅在结果不为null时收集

我有一个集合,我想找到某些元素并对其进行转换.我可以在两个闭包中做到这一点,但我想知道是否有可能只有一个?

def c = [1, 2, 3, 4]

def result = c.findAll {
    it % 2 == 0
}

result = result.collect {
   it /= 2
}
Run Code Online (Sandbox Code Playgroud)

我的真实用例是使用Gradle,我想找到一组特定的文件并将它们转换为完全限定的包名.

groovy find collect gradle

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

在exec之前编译Mvn

我正在尝试设置我的POM,这样当我这样做mvn exec:exec或者mvn exec:java它将首先编译源并且iff成功时,执行它.

我有以下内容,并试图移动<execution>部分,但无法让它工作:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.1</version>
            <configuration>
                <source>1.7</source>
                <target>1.7</target>
            </configuration>
            <executions>
                <execution>
                    <phase>exec</phase>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.2.1</version>
            <configuration>
                <mainClass>my.main.class</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

当我做任何一个mvn exec:exec ...mvn exec:java它没有先编译.我已经尝试将该<execution>部分放入exec插件部分,但这也不起作用?

compilation exec phase maven

12
推荐指数
1
解决办法
4164
查看次数

条件是否应测试阳性或阴性结果?

对不起,如果标题含糊不清,我不知道如何说出来.

是否更好地表达一个条件,使得您不想要的结果进入if语句,然后退出该函数,或者我应该测试我想要的结果并使用我的代码跟随该语句.

也许一些例子会有所帮助:

我的意思是测试阴性结果:

if(myObject == null) {
    return;
}

//do whatever with myObject
Run Code Online (Sandbox Code Playgroud)

我的意思是测试阳性结果:

if(myObject != null) {
    //do whatever with myObject
}
Run Code Online (Sandbox Code Playgroud)

对不起,如果有人能说得比我好,请做.

if-statement conditional-statements

11
推荐指数
1
解决办法
2987
查看次数

堆腐败,但只有在笔记本电脑上编译

我正在尝试编译一个程序,在我的桌面上编译完全正常,但在我的笔记本电脑上,它编译,但每次运行时都会给我这个错误:

Windows已在RR.exe中触发了断点.

这可能是由于堆损坏,这表明RR.exe或其加载的任何DLL中存在错误.

这也可能是由于用户在RR.exe具有焦点时按下F12.

输出窗口可能包含更多诊断信息.

我已经注释掉了行,直到找到导致错误的行:

if(glfwOpenWindow(width_, height_, 0, 0, 0, 0, 32, 0, GLFW_WINDOW) != GL_TRUE) {
    throw std::runtime_error("Unable to open GLFW window");
}
Run Code Online (Sandbox Code Playgroud)

奇怪的是,如果我替换width_height_常量,例如分别为800和600,它会停止堆损坏.此外,如果我只使用构造函数设置的默认值而不是传递值,它不会崩溃.

这是完整的代码.上面的行在Window构造函数中.

在window.h

#pragma once

#include <iostream>
#include <GL\glew.h>
#include <GL\glfw.h>

#pragma comment(lib, "opengl32.lib")
#pragma comment(lib, "glu32.lib")
#pragma comment(lib, "glew32.lib")
#pragma comment(lib, "GLFW.lib")

class Window {
public:
    Window(unsigned width = 800, unsigned height = 600);
    ~Window();

    void clear();
    inline void display() { glfwSwapBuffers(); }
    inline bool exit() { return …
Run Code Online (Sandbox Code Playgroud)

c++ glfw

10
推荐指数
1
解决办法
2044
查看次数

然后应用参数的前置参数

我有一个函数,message它需要一个参数来定义消息的类型,然后它连接任何其他参数来形成消息,纯粹是一个精确的.

它看起来像这样:

function message(type) {
    var msg = _.rest(arguments).join(" ");

    // Really the type will be used to set the class on a div
    // But I'm just using console.log to keep it simple for now.
    console.log(type + ": " + msg);
}
Run Code Online (Sandbox Code Playgroud)

我想提供辅助功能,error,warning,info,它只需调用message与正确的类型.我只是不确定最好的方法来解决这个问题.我无法想到两种方法,但我不确定我是否正确地进行了这项工作,或者说我可能过于复杂.

第一种方式似乎有点多余,创建一个包含第一个arg和参数的新数组然后将其展平.

message.apply(this, _.flatten(["error", arguments]));
Run Code Online (Sandbox Code Playgroud)

第二种方式感觉有点......凌乱?

Array.prototype.unshift.call(arguments, "error");
message.apply(this, arguments);
Run Code Online (Sandbox Code Playgroud)

虽然从我的经验来看:

(function() {
    Array.prototype.unshift.call(arguments, 0);
    console,log(arguments);
})(1, 2, 3);
Run Code Online (Sandbox Code Playgroud)

我得到以下输出:

[0, 1, 2, 3, undefined, undefined, undefined, …
Run Code Online (Sandbox Code Playgroud)

javascript arguments call apply

9
推荐指数
2
解决办法
2051
查看次数

无法获得GLFW链接

我正在尝试编译以下测试程序:

#include <GL/glfw.h>

int main(int argc, char** argv) {
    if(!glfwInit()) {
        return -1;
    }

    if(!glfwOpenWindow(640, 480, 8, 8, 8, 0, 24, 0, GLFW_WINDOW)) {
        return -1;
    }

    while(glfwGetWindowParam(GLFW_OPENED)) {
        glfwSwapBuffers();
    }

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

但我总是undefined reference在GLFW功能方面遇到错误.

下面是我的makefile:

CXX = clang++
CXXFLAGS = -Wall -std=c++0x
LDFLAGS = -lglfw

OBJ_DIR = bin
LIB_DIR = -L/usr/lib
INC_DIR = -I/usr/include

SOURCE = main.cpp
OBJECTS = ${SOURCE:%.cpp=$(OBJ_DIR)/%.o}
EXECUTABLE = hello

all: init $(OBJECTS) $(EXECUTABLE)

$(EXECUTABLE):
    $(CXX) $(CXXFLAGS) $(LDFLAGS) $(LIB_DIR) -o $@ $(OBJECTS)

$(OBJ_DIR)/%.o: …
Run Code Online (Sandbox Code Playgroud)

c++ clang glfw

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

禁用clang C++ 11警告

我不能为我的生活得到clang停止警告我有关C++ 11扩展.无论我在哪里使用"auto"或任何其他C++ 11扩展,它都会发出警告.

我有旗帜,-Wno-c++11-extension但仍打印它们.

这是我的makefile:

CXX = clang++
CXXFLAGS = -std=c++11 -Wall -Wno-c++11-extensions
LIBS = -lglfw -lGL -lGLU -lGLEW

OBJ_DIR = bin
LIB_DIR = -L/usr/lib
INC_DIR = -I/usr/include

SOURCE = $(wildcard *.cpp)
OBJECTS = ${SOURCE:%.cpp=$(OBJ_DIR)/%.o}
EXECUTABLE = vox
ARGS = -w1024 -h800

.PHONY: init clean

all: init $(OBJECTS) $(EXECUTABLE)

$(EXECUTABLE): $(OBJECTS)
    $(CXX) $(CXXFLAGS) $(LIB_DIR) -o $@ $(OBJECTS) $(LIBS)

$(OBJ_DIR)/%.o: %.cpp
    $(CXX) $(INC_DIR) -c $< -g -o $@ 

run: init $(EXECUTABLE)
    @echo $(ls . | grep *.cpp)
    @./$(EXECUTABLE) $(ARGS) …
Run Code Online (Sandbox Code Playgroud)

warnings clang c++11

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

使用foldexpr <SID>

我正在阅读以艰难的方式学习Vim脚本,并在进行练习时将一些困惑我的东西转换为将折叠功能转换为脚本本地脚本.

我试着这样做:

setlocal foldexpr=<SID>GetPotionFold(v:lnum)
Run Code Online (Sandbox Code Playgroud)

并重命名了所有要开始的功能 s:

令我惊讶的是,这不起作用,每一行的折叠级别为0?如果我GetPotionFold进入全球范围,它就有效.在将其分配给选项时,是否必须使用全局范围的功能?为什么?

vim

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

动作到最后一个角色

是否有动议移动到角色的最后?

例:

[A]pple -> move to last p -> Ap[p]le

我可以这样做,2fp但如果行中有很多"p",那么计算它们就不那么容易了10fp

vim motion

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