小编kry*_*tah的帖子

Vim:Colorscheme在终端中无法正确显示

我刚刚切换到了Vim的Solarized colorscheme,但是我在使颜色正确显示方面遇到了一些麻烦.更正确的描述是说它们看起来甚至不一样.

这是一个比较:

的MacVim

的MacVim


在iTerm2中使用Vim

在iTerm2中使用Vim

如您所见,区别在于白天和黑夜.

我的iTerm2终端设置:

iTerm2终端设置

我认为这可以让我的终端vim使用正确显示Solarized colorscheme所需的所有必要颜色,但显然我错了.有人有个主意吗?

vim terminal iterm macvim

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

Vim插件:EasyMotion - 好的还是坏的做法?

我是一个插件爱好者,除了学习Vim编辑器的时间外,我也尽力掌握它的插件.但是,如果一个插件强迫我忘记了Vim特有的习惯和命令,我通常会尽量避免它们.

这让我想到了EasyMotion的主题.
该插件围绕视觉导航的概念,并为用户提供了几个用户可以跳转的视觉文本标签.

现在我得到的是:这是一个好习惯吗? 因为它确实让我觉得它试图取代一些非常基本的Vim技能和习惯.例如:

  • 编写快速搜索查询和正则表达式
  • 练习与边界跳跃的眼睛协调(例如4w,2E,14j)

由于这种不确定性,这是我已经避免使用的单个安装插件,尽管这种讨论可以在某种程度上轻松应用于大多数插件.

vim plugins vim-plugin

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

Ruby'得到'表现得很奇怪?

我正在编写这个程序来管理dotfiles并且看起来似乎没有像往常一样,我无法通过Google追踪相关信息.

#!/usr/bin/env ruby

@filename = ''

unless $*[0].nil?
  # Storing filename (and adding dot) 
  @filename = "."+$*[0].to_s
else 
  # No filename given, exit and print to STDERR
  abort("No filename specified")
end


@file_path = File.expand_path("~/#{@filename}")

if File.exists?(@file_path)

  print "Enter something: "
  gets
  puts $_

end
Run Code Online (Sandbox Code Playgroud)

但是,程序在这样的"获取"行崩溃

$ ruby ./link.rb bash_profile
Enter something: /Users/krystah/repos/backpack/dotfiles/link.rb:24:in `gets': 
No such file or directory - bash_profile (Errno::ENOENT)
  from /Users/krystah/repos/backpack/dotfiles/link.rb:24:in `gets'
  from /Users/krystah/repos/backpack/dotfiles/link.rb:24:in `<main>'
Run Code Online (Sandbox Code Playgroud)

ruby

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

假设运行时分析简单,需要解释

根据今天的讲座,第一个循环具有顺序的运行时O(n),而第二个循环具有顺序的运行时O(log(n)).

for (int i = 0; i < n; i++) { // O(n)
    stuff(); // O(1)
}

for (int i = 1; i < n; i*=4) { // O(log(n))
    stuff(); // O(1)
} 
Run Code Online (Sandbox Code Playgroud)

有人可以详细说明原因吗?

algorithm code-analysis

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

在一条语句中从字符串中删除多个单词

我希望使用一条语句清除 URL 字符串的http://和部分。www.

我并不追求神奇的正则表达式解决方案,我只是想知道是否有一种方法可以替换(读取:删除)一个替换语句中的两个单词。

梦境场景:

String url = "http://www.superfect.com";
String[] purge = {"http://", "www."};
url = url.replace(purge, "");
Run Code Online (Sandbox Code Playgroud)

但是,这不会运行。这在 Java 中通常是如何完成的?

java

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

按3组连接数组元素?

我有这个数组:

strings = %w(John likes Pie Diana prefers Cupcakes)
Run Code Online (Sandbox Code Playgroud)

这将是:

strings[0] -> "John"
strings[1] -> "likes"
strings[2] -> "Pie"
strings[3] -> "Diana"
strings[4] -> "prefers"
strings[5] -> "Cupcakes"
Run Code Online (Sandbox Code Playgroud)

我怎样才能把它变成这个?

strings[0] -> "John likes Pie"
strings[1] -> "Diana prefers Cupcakes"
Run Code Online (Sandbox Code Playgroud)

ruby

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

低于 long 最大值的整数总和返回负数?

我有 5 个对象,a, b, cde。5 个对象的哈希码如下:

a => 72444
b => 110327396
c => 107151
d => 2017793190
e => 68574749
Run Code Online (Sandbox Code Playgroud)

如您所见,所有都是正值。但是,当我将它们总结为一个long-variable 时,结果为负:

long sum = a+b+c+d+e;
System.out.println(sum);     // prints -2098092366
Run Code Online (Sandbox Code Playgroud)

这些整数的总和远低于long(9223372036854775807)的最大值,但它产生了负结果。为什么?

java long-integer

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

基于子串匹配创建基于子阵列

如果我有一个字符串数组,我怎么能创建一个只包含原始数组中包含子字符串"yellow"的元素的子数组?

ruby

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

领导者 - 捷径会产生额外的动作吗?

我和其他数百人一样,在我的这些行中.vimrc:

let mapleader = ','   
nnoremap <leader>w :w<CR>          
Run Code Online (Sandbox Code Playgroud)

当我,w按顺序点击时,它会保存当前缓冲区.
但是,它也执行绑定的操作w,即jump forward by word.

换句话说,当我点击时 ,w,它会保存并向前跳跃一个单词.这有解决方法吗?

更新:

:verbose nmap ,w

产量

n ,w * :w<CR> <Space>,最后设置自〜/ .vimrc.

vim

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

定义一个作用于数组的函数

在Ruby中,我们定义类成员函数

class Dog
  def bark
    puts "woof"
  end
end
Run Code Online (Sandbox Code Playgroud)

我想知道并且在google搜索中彻底失败的是,在Ruby中如何以及在何处定义处理对象数组的方法?

我希望能够做到这样的事情:

dogs = [Dog.new, Dog.new, Dog.new]
dogs.some_function
Run Code Online (Sandbox Code Playgroud)

我如何定义some_function

注意:我不是在解决特定问题之后,更多的是如何定义这样一个函数的步骤.

ruby

0
推荐指数
1
解决办法
68
查看次数

realloc()似乎影响已经分配的内存

我遇到一个问题,其中的调用realloc似乎修改了另一个字符串的内容,keyfile.

它应该运行一个以null结尾char*(密钥文件),其中包含500个以上的字符.然而,问题是reallocation我在while-loop中执行似乎修改了密钥文件的内容.

我尝试删除动态重新分配,reallocfor使用大小200*sizeof(int)而不是初始化-loop中的指针.问题仍然存在,keyfile字符串在(重新)分配内存期间被修改,我不知道为什么.我通过在mallocrealloc语句之前和之后打印keyfile-string来确认这一点.

注意:密钥文件仅包含字符a-z,没有数字,空格,换行符或大写.只有26个小写字母的文字.

int **getCharMap(const char *keyfile) {

    char *alphabet = "abcdefghijklmnopqrstuvwxyz";
    int **charmap = malloc(26*sizeof(int));

    for (int i = 0; i < 26; i++) {
        charmap[(int) alphabet[i]]    = malloc(sizeof(int)); 
        charmap[(int) alphabet[i]][0] = 0; // place a counter at index 0
    }


    int letter;
    int count = 0;
    unsigned char c = keyfile[count];
    while (c …
Run Code Online (Sandbox Code Playgroud)

c malloc realloc

0
推荐指数
1
解决办法
102
查看次数

CDI 拦截器未启动

我的拦截器没有在应该启动的时候启动,即使它已在 bean 中注册并且文件没有提供任何警告。我缺少什么?

编辑1:我希望能够在每次Genres.java调用和离开函数时进行记录,但使用此配置我根本没有得到任何输出。

编辑 2:按照 Svetlin 的建议应用断点后,我可以确认代码永远不会到达拦截器或生产者。

beans.xml

<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
       version="1.1" bean-discovery-mode="all">
    <interceptors>
        <class>no.krystah.log.LoggingInterceptor</class>
    </interceptors>
</beans>
Run Code Online (Sandbox Code Playgroud)


日志拦截器.java

package no.krystah.log;

import javax.inject.Inject;
import javax.interceptor.AroundConstruct;
import javax.interceptor.AroundInvoke;
import javax.interceptor.Interceptor;
import javax.interceptor.InvocationContext;

import org.slf4j.Logger;

@Log @Interceptor
public class LoggingInterceptor {

    @Inject
    Logger logger;

    @AroundConstruct
    private void init(InvocationContext ic) throws Exception {
        logger.info("Entering constructor");
        try {
            ic.proceed();
        } finally {
            logger.info("Exiting constructor");
        }
    }
    @AroundInvoke
    public Object logMethod(InvocationContext ic) throws Exception {
        logger.info(ic.getTarget().toString()+" - "+ ic.getMethod().getName()); …
Run Code Online (Sandbox Code Playgroud)

java interceptor cdi java-ee-7

0
推荐指数
1
解决办法
1891
查看次数