小编Lin*_*ios的帖子

更好的VIM自动完成功能

所有,

我已经和vim一起工作了一段时间,并且喜欢它的一切 - 我只有一件事我很想念像RubyMine这样的IDE,那就是高级自动完成功能.

作为参考,这是我的标准VIM设置:https: //github.com/wrwright/.vim

我尝试过使用omnicomplete + supertab的ctags,我想念的一个主要元素是能够调出属性/常量/方法的上下文敏感列表.例如,当我学习RubyMotion时,我很乐意帮助记住iOS SDK常量/属性/方法,但是我的VIM自动完成程序停止了建议的类名.如果它确实建议方法/属性,它列出了大量的方法/属性甚至不适用于我正在使用的类.

我想(简单示例)能够键入UIColor.bl并使用UIColor.blueColor自动完成(或者建议是否有多个选项以"bl"开头,这些选项是UIColor的属性.

RubyMine做得非常好,如果我能让VIM在自动完成方面同样聪明,那将是天堂般的(在学习RubyMotion/iOS开发时也是一个很好的福音.

我也尝试过SnipMate(甚至是https://github.com/rcyrus/snipmate-snippets-rubymotion上的RubyMotion定制变体),但这似乎并没有提供我正在寻找的功能.

ruby vim autocomplete rubymotion

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

接受邀请多重连接

我希望我没有通过发布这个问题来违反NDA.

我正在使用新的多路连接,使用蓝牙将一些文件发送到附近的设备.我已设法发送邀请,但我似乎没有得到如何显示UIAlertView,用户可以接受或拒绝邀请.现在,当用户发送时,文件会自动保存,并且没有接受/拒绝警​​报.

代码是:

- (void) advertiser:(MCNearbyServiceAdvertiser *)advertiser
didReceiveInvitationFromPeer:(MCPeerID *)peerID
               withContext:(NSData *)context
         invitationHandler:(void(^)(BOOL accept,
                                    MCSession *session))invitationHandler{
... save the data context
Run Code Online (Sandbox Code Playgroud)

但有警报:

- (void) advertiser:(MCNearbyServiceAdvertiser *)advertiser
didReceiveInvitationFromPeer:(MCPeerID *)peerID
                withContext:(NSData *)context
         invitationHandler:(void(^)(BOOL accept,
                                    MCSession *session))invitationHandler{


DevicePeer = [MCPeerID alloc];
DevicePeer = peerID;
ArrayInvitationHandler = [NSArray arrayWithObject:[invitationHandler copy]];

// ask the user
UIAlertView *alertView = [[UIAlertView alloc]
                          initWithTitle:@""
                          message:@""
                          delegate:self
                          cancelButtonTitle:@"NO"
                          otherButtonTitles:@"YES", nil];
[alertView show];
 alertView.tag = 2;
}
Run Code Online (Sandbox Code Playgroud)

和警报视图方法:

 - (void) alertView:(UIAlertView *)alertView
 clickedButtonAtIndex:(NSInteger)buttonIndex
{  
    // retrieve the invitationHandler
    // get user …
Run Code Online (Sandbox Code Playgroud)

ios multipeer-connectivity

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

可以有一个占用0个字节的C++类型

我正在尝试声明一个占用零字节的C++变量.它在一个联合中,我以int [0]的类型开始.我不知道这是否实际上是零字节(虽然sizeof(int [0])是0).我需要一种更好的方法来声明一个0字节类型,并希望可以将其类型化为nullType或emptyType.变量在一个联合中,所以无论如何最终都会保留内存.我尝试了无效的机会,但是C++抱怨道.我正在使用Ubuntu 10.10,包含当前版本的内核,以及最新的GCC.这是联盟:

union RandomArgumentTypesFirst
{
    uint uintVal;
    nullType nullVal;
}
Run Code Online (Sandbox Code Playgroud)

这是typedef:

typedef int[0] nullType;
Run Code Online (Sandbox Code Playgroud)

编译器对typedef说了这个:

error: variable or field ‘nullVal’ declared voidmake[2]:
Run Code Online (Sandbox Code Playgroud)

当我输入时int[0],它有效.有什么建议?

编辑:正如@fefe在评论中所说,int[0]可能由编译器作为扩展提供.GCC的网站说默认情况下编译器有很多扩展.

c++ null sizeof void

7
推荐指数
3
解决办法
3978
查看次数

可靠的 UDP 实现

我需要一个满足以下条件的 UDP 实现:

  • 在 Linux 和 Mac 上可用(只有最新版本很重要)
  • 可从 C++ 使用
  • 订单包
  • 保证数据包交付
  • 非面向连接(如 UDP)

注意:我不想为此使用 TCP。注意:它可以由任何套接字 API 实现,只要它在两个平台上可用并且对 C++ 可用。

编辑:我查看了 UDT、RUDP 和 SCTP。这些似乎是主要的竞争者。有什么想法吗?

编辑: UDT似乎是我正在寻找的。它是在用户空间通过内核 UDP 实现的这一事实是否会成为一个巨大的性能问题?还是速度仍然比 TCP/STCP 快?

编辑 (2/15/12):我想出了一个使用 TCP 和中央重定向服务器的解决方案。该系统让一个客户端通过一个永远开放的 TCP 连接将数据发送到服务器,然后他们将数据传递给正确的另一个客户端,沿着服务器的 TCP 连接到第二个。

c++ udp network-protocols

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

Ejabberd如何管理数据库以进行群集?

它是将所有数据复制到每个节点还是将数据片段存储在每个节点上,然后在运行时从不同节点获取所需的每个片段?或者这是如何工作的?

如果您使用MySQL而不是Mnesia,群集是否仍能正常工作?

mysql erlang mnesia cluster-computing ejabberd

6
推荐指数
2
解决办法
1759
查看次数

Ruby Version Manager打破了我的$ PATH

我在OSX上安装了RVM,现在我的$PATH变量完全改变了.我试图改变它.bashrc,.profile但它似乎没有任何影响.我有什么想法我做错了吗?

ruby macos bash rvm

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

奇怪的红宝石循环行为(为什么这样做)

def reverse(ary)
  result = []
  for result[0,0] in ary
  end
  result
end

assert_equal ["baz", "bar", "foo"], reverse(["foo", "bar", "baz"])
Run Code Online (Sandbox Code Playgroud)

这有效,我想了解原因.有什么解释吗?

ruby for-loop

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

可用于Mono的音频库

我正致力于语音识别.我在这个领域很新.任何人都可以帮助我在Ubuntu上使用C#对音频库进行音频处理有所帮助.

c# mono

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

如何使用时区感知日期过滤模型?

所以我试图按日期过滤 django 模型。仅使用年、年+月或年+月+day_of_month。我现在使用的策略是这样的:

n.filter(create_date__year=q)
n.filter(create_date__year=q[:4],create_date__month=q[4:6])
n.filter(create_date__year=q[:4],create_date__month=q[4:6],create_date__day=q[6:8])
Run Code Online (Sandbox Code Playgroud)

其中 'q' 是格式分别为 'yyyy'、'yyyymm' 或 'yyyymmdd' 的日期字符串。

这工作得很好,django 没有考虑时区。Django 基于 UTC 时间而不是 EDT 进行搜索,这是实际日期时间对象的设置。

有没有办法根据特定时区搜索年/月/日?

python django datetime date

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

在“pip install”时可选择排除一些依赖项

setuptools正如经常使用的那样,提供了一种使用 指定可选依赖项的方法extras_require。有没有办法做到相反?也就是说,要有

\n
pip install mypackage\n
Run Code Online (Sandbox Code Playgroud)\n

安装全套依赖项,但要有类似的东西

\n
pip install mypackage[core]\n
Run Code Online (Sandbox Code Playgroud)\n

或者

\n
pip install --core-option mypackage\n
Run Code Online (Sandbox Code Playgroud)\n

只安装一组有限的核心依赖项?它不必像 xe2x80x99t 那样extras_require,只是在 pip install 中指定仅需要核心依赖项的某种方式。

\n

(对于某些软件包,在安装方面破坏向后兼容性是一个困难的选择,特别是当大多数用户想要所有依赖项时。尽管如此,某些用户可能需要避免核心功能不需要的大量或破坏的依赖项。)

\n

python dependencies pip setuptools setup.py

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