如果您按照I18N Rails指南进行操作,则所有生成的链接都包含locale参数(localhost/en/about,localhost/fr/about).这是因为我们使用该方法default_url_options始终添加Locale参数:
def default_url_options(options={})
{ :locale => I18n.locale }
end
Run Code Online (Sandbox Code Playgroud)
当语言环境未知或默认语言环境时,是否可以从生成的URL中删除语言环境参数?
我需要的 :
mysite/aboutmysite/about而不是localhost/en/about)mysite/fr/about我试图只设置语言环境,如果它不是默认语言环境,但结果是生成的链接永远不会包含语言环境参数...
我尝试了很多像这样的东西
def default_url_options(options={})
if I18n.locale == :fr
{ :locale => I18n.locale }
else
{ :locale => nil }
end
end
Run Code Online (Sandbox Code Playgroud)
整码:
ApplicationController.rb:
before_filter :set_locale
def set_locale
I18n.locale = params[:locale]
end
def default_url_options(options={})
{ :locale => I18n.locale }
end
Run Code Online (Sandbox Code Playgroud)
的routes.rb
scope "(:locale)", :locale => /en|fr/ do
match 'about' => 'static_pages#about', :via => …Run Code Online (Sandbox Code Playgroud) 我想在可视模式下映射ctrl + a来选择并复制当前缓冲区中的所有文本.
基本思想是执行:%y*(将所有缓冲区复制到剪贴板).因此,映射应该是:xmap:%y*(仅适用于可视模式的xmap)
但是,每当我运行此映射时,都会显示以下输出:
E492: Not an editor command: '<,'>%y*
Run Code Online (Sandbox Code Playgroud)
而且,我认为Vim是对的:-).在可视模式下,按":",使cmd-line显示那些令人惊讶的字符:
":'<,'>"
Run Code Online (Sandbox Code Playgroud)
唯一相关的一块信息在哪里可以找到这种模式("<">)是一个:http://vimdoc.sourceforge.net/htmldoc/cmdline.html#v_:(并没有帮助我) .
问题:我做错了什么(配置......)?我的需求是否有另一个答案(将所有文本复制到剪贴板)?
我正在运行Vim 7.3,我只在我的vimrc中设置了nocompatible
谢谢你的帮助,汤姆