2014-11-16 39 views
1

当我评估org-mode里面的ruby代码块时,我遇到了utf-8错误。org-babel,ruby和encoding

而事实上如果我做

#+BEGIN_SRC ruby :exports both :results output 
    puts RUBY_VERSION 
    puts __ENCODING__ 
#+END_SRC 

#+RESULTS: 
: 2.1.1 
: US-ASCII 

,当我试图评估

#+BEGIN_SRC ruby 
    'Aurélien' 
#+END_SRC 

ORG-通天错误输出

-:3: invalid multibyte char (US-ASCII) 
-:3: invalid multibyte char (US-ASCII) 
-:3: syntax error, unexpected end-of-input, expecting keyword_end 
'Aurélien' 

得到这个错误,如果我启动一个inf-ruby缓冲区我可以使用utf-8,没有问题。我认为这是一个org-babel的问题。

我的配置:

  • M-x emacs-version 24.4.1
  • M-x org-version 8.2.10
  • M-! ruby --version 2.1.1p76
  • 从软件包列表:INF-红宝石20141005.550安装

在我的init文件我有

(prefer-coding-system 'utf-8) 
(set-default-coding-systems 'utf-8) 
(set-keyboard-coding-system 'utf-8) 
(set-selection-coding-system 'utf-8) 
(set-terminal-coding-system 'utf-8) 
(setq buffer-file-coding-system 'utf-8) 
(setq erc-server-coding-system '(utf-8 . utf-8)) 
(setq locale-coding-system 'utf-8) 
;; Treat clipboard input as UTF-8 string first; compound text next, etc. 
(setq x-select-request-type '(UTF8_STRING COMPOUND_TEXT TEXT STRING)) 

是否有更改为默认情况下为ruby代码块和org-babel设置utf-8的设置?

+0

工作正常,我。最新的组织从Git。 –

+0

也,你忘了'放'' –

+0

我真的不在乎'puts'在我的例子中。 '放'或不我得到一个错误。 –

回答

2

我发现了这个问题。

在我的Mac上,带有GUI默认环境编码的Emacs是C

在我的初始化文件,我指定的环境编码,

(setenv "LANG" "fr_FR.UTF-8") 
(setenv "LC_ALL" "fr_FR.UTF-8") 

和org,巴贝尔将它拾起正确

相关问题