Ruby:Sublime中开发Ruby需要注意的Encoding事项
背景
最近在用Sublime作为开发环境学习Ruby,本文就记录一下Ruby和Sublime在编码方面的问题。
Sublime相关
默认的文件存储编码:UTF8
Sublime文件默认存储编码为UTF8,我们几乎不用修改这个选项。
默认的输出控制台编码:UTF8
在按快捷键【Control + B】执行代码的时候,所有输出都会被Python(Sublime是用Python开发的)接收,然后输出到控制台,输出的字符串编码必须是UTF8编码。
修改默认的输出控制台编码
注意:开发Ruby是不用修改这个文件的。
第一步:找到D:\Program Files\Sublime Text 2\Pristine Packages\Ruby.sublime-package这个文件并用压缩软件打开。
第二步:编辑压缩包中的这个文件:Ruby.sublime-build。
第三步:修改文件并将其保存到压缩包中,修改内容如下:
{
"cmd": ["ruby", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.ruby",
"encoding": "utf-8"
}
第四步:重启Sublime。
Ruby相关
默认的代码解析编码为:ASCII
我们可以修改这个配置,在第一行增加如下注释即可:
# coding: utf-8
注意:Ruby1.9可以使用这个注释,2.0会自动根据存储编码进行解析的;这行注释只影响源代码的词法结构,例如:可以使用中文变量名、字符串字面量的编码为UTF8。
和编码相关的一些方法
# coding: utf-8 puts __ENCODING__ # 源文件编码:UTF-8
puts Encoding.default_external # 运行环境编码:GBK
puts Encoding.locale_charmap # 本地环境编码:CP936
puts "段光伟".encoding # 字面量编码:UTF-8
如何在Sublime中输出用Ruby执行命令行工具的返回结果
用ruby执行命令行工具返回的结果是GBK编码,必须转换为UTF8才能输出到Sublime控制台。
# coding: utf-8 puts __ENCODING__ # 源文件编码:UTF-8
puts Encoding.default_external # 运行环境编码:GBK
puts Encoding.locale_charmap # 本地环境编码:CP936
puts "段光伟".encoding # 字面量编码:UTF-8 dir = `dir`.encoding # 命令行返回结果编码:GBK
puts `dir`.encode("utf-8") # 必须转码后才能被Sublime输出到控制台
注意:如果不用Sublime开发,直接在命令行运行ruby程序是不需要转换的。
备注
字符集和编码我还没有入门,有这方面资料的朋友记得给我推荐一下。
参考资料
http://www.360doc.com/content/12/0511/09/992979_210237955.shtml。
http://www.cnblogs.com/skynet/archive/2011/05/03/2035105.html。
Ruby:Sublime中开发Ruby需要注意的Encoding事项的更多相关文章
- Sublime中开发Ruby
Ruby:Sublime中开发Ruby需要注意的Encoding事项 目录 背景Sublime相关默认的文件存储编码:UTF8默认的输出控制台编码:UTF8修改默认的输出控制台编码Ruby相关默认的代 ...
- ubuntu 14.04中安装 ruby on rails 环境(填坑版) 呕血推荐
环境:在win7 上Vmware虚拟机环境中安装的ubuntu 14.04 开发相关: ruby 2.2.0 rails 4.2.0 sublime text 3 本文说明:所有的命令均在$ 之后,若 ...
- Ruby与Python开发的环境IDE配置(附软件的百度云链接)
Ruby开发环境配置 1.Aptana_RadRails(提示功能不好,开发Ruby不推荐) 链接:http://pan.baidu.com/s/1i5q96K1 密码:yt04 2.Aptana S ...
- win7安装ruby on rails开发环境
前言 我们看到很多文章说ruby环境windows它是非常困难的基础上,这将是各种稀奇古怪的问题,因此,建议linux和mac发. 可是我依照教程搭了下,问题也不算太多.总过大概花费了2个半小时左右就 ...
- ubuntu 14.04中安装 ruby on rails 环境
环境:在win7 上Vmware虚拟机环境中安装的ubuntu 14.04 1. bundle install 时,报json错误可以看出是在安装nokogiri时遇到了问题,此时执行 sudo ap ...
- Ruby on Rails入门——macOS 下搭建Ruby Rails Web开发环境
这里只介绍具体的过程及遇到的问题和解决方案,有关概念性的知识请参考另一篇:Ruby Rails入门--windows下搭建Ruby Rails Web开发环境 macOS (我的版本是:10.12.3 ...
- 用VirtualBox和vagrant在win7×64上搭建ruby on rails 开发环境
下载准备 1.vagrant 官方 WINDOWS Universal (32 and 64-bit) http://www.vagrantup.com/downloads.html 2.Virtu ...
- 在linux,windows上安装ruby on rails开发环境
ruby是一个非常优秀的语言,ruby的精髓rails可以让web开发的效率成倍的提高,下面就介绍一下我搭建rails环境的过程.windows下搭建ruby rails web开发环境本篇文章主要是 ...
- Ruby Rails学习中:Ruby内置的辅助方法,基础内容回顾补充
一. Ruby内置的辅助方法 1.打开文件:app/views/layouts/application.html.erb(演示应用的网站布局) 来咱把注意力放在圈起来的那一行: 这行代码使用 Rail ...
随机推荐
- SimpleCV install and "You need the python image library to save by filehandle"
2015年5月3日 22:15:43 在win7下安装了python.simplecv,试着运行simplecv官网第一个hello world程序结果报错,提示说%python%/lib/site- ...
- covariance matrix 和数据分布情况估计
how to get data covariance matrix: http://stattrek.com/matrix-algebra/covariance-matrix.aspx meaning ...
- 使用亚马逊云服务器EC2做深度学习(四)配置好的系统镜像
这是<使用亚马逊云服务器EC2做深度学习>系列的第四篇文章. (一)申请竞价实例 (二)配置Jupyter Notebook服务器 (三)配置TensorFlow (四)配置好的系统 ...
- iis应用池内存溢出卡死优化
1.修改回收阀值memoryLimit 在ASP.NET Web服务器上,ASP.NET所能够用到的内存,通常不会等同于所有的内存数量.在machine.config(C:/WINDOWS/Micro ...
- VuGen录制选项Recording Options
- poj1562 Oil Deposits(DFS)
题目链接 http://poj.org/problem?id=1562 题意 输入一个m行n列的棋盘,棋盘上每个位置为'*'或者'@',求'@'的连通块有几个(连通为8连通,即上下左右,两条对角线). ...
- 初拾Java(问题三:乱码问题)
年后的工作不是那么的忙,最近也开始思考自己以后的路该怎么走,在迷茫的时候,还是坚持学习点儿东西吧. 接着之前的JSP,这次是要尝试着用request.getParameter(ParameterNam ...
- centos7 默认进入系统命令行模式修改
systemctl get-default #查看系统启动进入默认模式 systemctl set-default graphical.target #改成默认进入 图形界面模式 systemctl ...
- linux——(8)数据流重定向、管道命令
概念一:数据流重定向 数据流分输入流和输出流,还有一个标准错误流,负责管理出错信息,比如一般的命令的输出会输出到屏幕上,我们可以用重定向让他输入到某个文件内. 相关操作: 1,标准输入(stdin): ...
- vim自动补全插件YouCompleteMe的安装及配置
原文地址: http://blog.csdn.net/shixuehancheng/article/details/46289811