小编Loo*_*oom的帖子

Mac OS X上的Emacs Leopard键绑定

我是Mac用户,我决定学习Emacs.我已经读过这样可以减少手部疲劳并提高精度,CTRL并且CAPS LOCK应该更换钥匙.我如何在Leopard中执行此操作?

此外,在终端我必须使用ESC密钥来调用元.有没有办法让alt/option键代替调用meta?

更新:虽然控制键现在更容易被击中,但元键也经常被使用,以至于它在我的MacBook和Apple键盘上的位置也值得关注.事实上,我发现控制键实际上更容易被击中,所以我重新映射了我的控制键以充当元键.有没有人有更好/更标准的解决方案?

macos emacs keyboard-shortcuts key-bindings

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

如何grep,排除一些模式?

我想在文件中找到一些出现某种模式和缺少其他模式的行.例如,我需要找到所有文件/行,包括loom除了gloom.所以,我可以loom用命令找到:

grep -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp)
Run Code Online (Sandbox Code Playgroud)

现在,我想搜索loom排除gloom.但是,以下两个命令都失败了:

grep -v 'gloom' -n 'loom' ~/projects/**/trunk/src/**/*.@(h|cpp)
grep -n 'loom' -v 'gloom' ~/projects/**/trunk/src/**/*.@(h|cpp)
Run Code Online (Sandbox Code Playgroud)

我该怎么做才能实现目标?

编辑1:我的意思是loom并且gloom是字符序列(不一定是单词).所以,我需要,例如,bloomberg在命令输出中,不需要ungloomy.

编辑2:有我的期望样本.以下两行都在命令输出中:

我面对着透过香的图标.

Arty 在阴沉的日子里正在蠢蠢欲动.

以下两行都不在命令输出中:

这是阴郁的可怕 - 伟大的mu mu do do o o o o o.

在西南角的高耸的大厅里

bash grep

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

Lombok插件与2018.1 Intellij Idea不兼容

现在我已经看到了Intellij Idea更新窗口的概念:

插件与找到的新版本不兼容:Lombok Plugin

在此输入图像描述

有没有办法解决问题,或者我应该等到lombok插件团队解决兼容性问题?

intellij-idea lombok intellij-lombok-plugin

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

在应用程序构建期间自动复制文件以输出

C#项目中的文件有" 复制到输出目录"属性.但是在VC++项目中却没有.我知道,我可以在VC++中使用Build事件并在那里写一些类似的东西

xcopy /y /d %(FullPath) $(OutDir)
Run Code Online (Sandbox Code Playgroud)

有没有办法避免使用CMD(和其他脚本方法)?在这种情况下,msbuild可以帮忙吗?

c++ msbuild visual-studio-2010 visual-c++

58
推荐指数
6
解决办法
3万
查看次数

C2977:'std :: tuple':模板参数太多(MSVC11)

我正在尝试使用Visual C++ 11构建googletest,但是下面的代码会导致错误

template <typename T1, typename T2, typename T3, typename T4, typename T5,
          typename T6, typename T7, typename T8, typename T9>
void PrintTo(const ::std::tr1::tuple<T1, T2, T3, T4, T5, T6, T7, T8, T9>& t, // <-- error C2977
             ::std::ostream* os) {
  PrintTupleTo(t, os);
}
Run Code Online (Sandbox Code Playgroud)

这是一个错误文本:

f:\gtest-1.6.0\include\gtest\gtest-printers.h(550): error C2977: 'std::tuple' : too many template arguments
  c:\program files (x86)\microsoft visual studio 11.0\vc\include\utility(72) : see declaration of 'std::tuple'
Run Code Online (Sandbox Code Playgroud)

并且有utility-file 的第72行:

template<class = _Nil, _MAX_CLASS_LIST>
   class tuple; // Line 72
Run Code Online (Sandbox Code Playgroud)

有什么问题std::tuple …

c++ tuples variadic-templates c++11 visual-studio-2012

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

使用.begin()和.end()对于std :: set的std :: inserter有区别吗?

如果it1和it2之间有什么区别?

std::set<sometype> s;

auto it1 = std::inserter(s, s.begin());
auto it2 = std::inserter(s, s.end());
Run Code Online (Sandbox Code Playgroud)

c++ stl stdset insert-iterator

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

正确的方法(移动语义)从C++ 11中的函数调用返回一个std :: vector

我想填充std :: vector(或其他一些STL容器):

class Foo {
public:
  Foo(int _n, const Bar &_m);
private:
  std::vector<Foo> fooes_;
}
Run Code Online (Sandbox Code Playgroud)

1.好看的ctor,性能昂贵

std::vector<Foo> get_vector(int _n, const Bar &_m) {
  std::vector<Foo> ret;
  ... // filling ret depending from arguments
  return ret;
}

Foo::Foo(int _n, const Bar &_m) : fooes_(get_vector(_n, _m) {}
Run Code Online (Sandbox Code Playgroud)

2.性能更好,看起来更糟糕

void fill_vector(int _n, const Bar &_m, std::vector<Foo> &_ret) {
  ... // filling ret depending from arguments
}

Foo::Foo(int _n, const Bar &_m) { fill_vector(_n, _m, fooes_); }
Run Code Online (Sandbox Code Playgroud)

是否可以get_vector使用C++ 0x(移动语义功能等)重写第一个示例中的函数以避免冗余复制和构造函数调用?

c++ stl move-semantics return-value-optimization c++11

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

当类名已知时,将Object类的java对象动态转换为给定的类

是的,我知道.问题的长标题...所以我在字符串中有类名.我以这种方式动态创建该类的对象:

String className = "com.package.MyClass";   
Class c = Class.forName(className);
Object obj = c.newInstance();
Run Code Online (Sandbox Code Playgroud)

我如何动态地将该obj转换为MyClass对象?我不能这样写:

MyClass mobj = (MyClass)obj;
Run Code Online (Sandbox Code Playgroud)

...因为className可以是不同的.

java class object type-conversion

29
推荐指数
2
解决办法
15万
查看次数

"同步原语"的定义

术语同步原语到底意味着什么?例如:互斥,临界区,等待计时器,事件,监视器,条件变量,信号量.它们都是同步原语吗?我还没有列出任何其他同步原语吗?这些是有效的问题吗?

language-agnostic multithreading synchronization terminology

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

使用MSVC 11进行编译(VS 2012)

如何使用Visual Studio C++ 11构建Boost(我试过1.48.0版本)?找不到工具集.我添加了工具集vc11 但收到了一条消息:bootstrap.batvc11F:\Programming\boost_1_48_0\tools\build\v2\engine\build.bat

ERROR: Cannot determine the location of the VS Common Tools folder.
Run Code Online (Sandbox Code Playgroud)

编辑:费鲁乔 答案适用于VS 2012 Express和升压1.51.0过.

c++ boost boost-build visual-c++ visual-studio-2012

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