小编ayc*_*ter的帖子

如何设置基本的ruby项目?

我想用10-20个类/文件创建一个小的ruby项目.我需要一些宝石,我想使用rspec作为测试框架.

我可能想稍后建立一个宝石,但这不确定.

是否有一些Howto或Guide向我展示了如何设置项目的基本结构?

我的问题是:

  • 我在哪里放置所有自定义错误/例外
  • 是否存在一些用于命名lib,bin,src等目录的约定?
  • 我在哪里放置测试数据或文档.
  • 我在哪里需要我的所有文件,以便我可以在我的项目中访问它们.

我知道我可以从头做一切,但我想要一些指导.我可以复制一些好的宝石,但我不确定我真正需要什么以及我可以删除什么.

我查看了http://gembundler.com/,但在设置捆绑器后它停止了.

ruby project-structure

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

有没有办法让alt-f和alt-b前后跳字而不是在Mac上打印ƒ和∫?

我知道Mac默认启用了一些Emacs键绑定(例如Ctrl+ A移动到行首等).例如,如果我打开TextEdit,我可以像在Emacs中一样导航.

但是,当我尝试Alt+ FAlt+ b移动到下一个单词或最后一个单词时,它不起作用.它打印出来ƒ,?而不是.

有没有办法跳过单词?

我认为我没有修补键绑定,而是在德语键盘上使用美国布局.

macos emacs key-bindings

39
推荐指数
4
解决办法
8671
查看次数

我可以修改vagrant中共享文件夹的所有权吗?

我使用vagrantchef在虚拟机中开发自己的博客.为了方便访问wordpress文件夹,我创建了一个共享文件夹.

基本上wordpress文件夹在我的主机上,并作为共享文件夹挂载在VM中的/ var/www/wordpress中.配置类似于:

config.vm.share_folder "foo", "/guest/path", "/host/path"
Run Code Online (Sandbox Code Playgroud)

我的问题是,vagrant:vagrant即使我在主机上更改了VM,我的VM中的所有权也始终如此.VM中的所有权更改将被忽略.

我不能chown用来设置上传目录的所有权www-data:www-data.

可以使用chmod和更改访问限制777,但这是一个非常丑陋的黑客.

这就是我真正想要的.这可能吗?:

  • 开发:从我的主机访问共享文件夹.
  • 访问限制:在VM上,所有文件和文件夹都应具有适当且安全的所有权和访问限制.

acl chef-infra vagrant

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

如何防止emacs在第一行添加编码信息?

在某些文件中,特别是.rb我有一个问题,emacs强迫我有以下编码行.

# -*- coding: utf-8 -*-
Run Code Online (Sandbox Code Playgroud)

即使我删除了该行,也会在保存文件后再次写入.

是否可以禁用此功能?

emacs encoding

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

是否可以从本地缓存捆绑/安装gem?

我的计算机上有一堆宝石,我想在厨师食谱中使用.

我知道可以将它们放在像/ tmp/gems这样的目录中,只需:

cd /tmp/gems
gem install *.gem
Run Code Online (Sandbox Code Playgroud)

是否可以将所有宝石放在一个目录中,我可以使用bundler安装它们而无需再次下载它们?

cd /somedir/my_rails_project
bundle
Run Code Online (Sandbox Code Playgroud)

我想节省带宽.

ruby gem caching bundle

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

如何在Windows中为Emacs 23使用Alt作为元键,尤其是Mx?

我尝试使用Alt作为FSF Emacs 23 Windows版本和EmacsW32的元键,但特别是Mx(Alt-x)不起作用.

不知怎的,我不能使用Alt作为Alt-x(Mx)的Meta键.我搜索得非常努力,我得到的是如何在w32-meta-style中将元键切换为Alt.目前,此变量的值为"使用Alt作为Meta键".我也尝试了所有其他值,但都没有成功.此外,我安装了来自http://ourcomments.org/Emacs/EmacsW32.html的未修补版本的emacs 以及来自gnu.org的原始二进制文件.所有版本都有同样的问题.

Alt用作Meta,但Alt-x(Meta-x)除外.

我的设置如下:

  • Windows 7 x64专业版
  • 德国键盘

这个问题是Windows特有的,因为我有一个工作的Ubuntu版本的Emacs 23.

编辑:这是适用于Windows的Growl.它在启动时加载并写入所有Alt-x输入.所以我的解决方案就是禁用Growl,因为我不再需要它了.可能是你的另一个应用程序.

windows emacs meta-key

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

如何阻止自制软件抱怨$ PATH中的*-config文件?

我收到以下错误消息 brew doctor

$ brew doctor
Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:

    /Users/username/.rbenv/shims/passenger-config
Run Code Online (Sandbox Code Playgroud)

我认为这是因为自制软件使用的*-config模式,因为该文件的目录位于$ PATH中.我还是不知道如何解决这个问题.

$ PATH看起来像这样(我重新格式化它以便更容易看到):

/Users/username/.rbenv/shims
/Users/username/.nvm/v0.9.8/bin …
Run Code Online (Sandbox Code Playgroud)

homebrew rbenv

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

如何获取给定内容类型的默认扩展名?

给定变量content_type = "application/pdf",也可以包括任何其他mime类型.

如何获取内容类型的默认扩展名?

我目前有两个解决方案,看起来非常"复杂".

破解字符串

content_type.split("/")[1]
Run Code Online (Sandbox Code Playgroud)

使用MIME :: Types

  require 'mime/types'
  MIME::Types[content_type].first.extensions.first 
Run Code Online (Sandbox Code Playgroud)

有更好的解决方案吗?

ruby ruby-on-rails

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