由于经常编辑英文文本,开启了word wrap功能:(setq-default word-wrap t)。这样读英文当一行很长的时候就会从单词断行而不是从单词中的某个字母断行。
可是,这时中文的断行变得惨不忍睹,比如
啊啊 啊啊...啊啊啊
在emacs中就会显示成
啊啊
啊啊...啊啊啊
也就是说emacs把汉字也当作单词处理,只有在空格和标点符号的地方才给断行了。不知有没有什么解决方法?多谢!
emacs开启word-wrap之后中文显示混乱
-
- 帖子: 43
- 注册时间: 2008-01-10 9:33
- 联系:
- lilydjwg
- 论坛版主
- 帖子: 4249
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: emacs开启word-wrap之后中文显示混乱
换 Vim,
- Fermat618
- 帖子: 728
- 注册时间: 2008-12-28 16:01
Re: emacs开启word-wrap之后中文显示混乱
找找一些选项吧,vim 在一些选项没设置好的时候也会这样。tririver 写了:由于经常编辑英文文本,开启了word wrap功能:(setq-default word-wrap t)。这样读英文当一行很长的时候就会从单词断行而不是从单词中的某个字母断行。
可是,这时中文的断行变得惨不忍睹,比如
啊啊 啊啊...啊啊啊
在emacs中就会显示成
啊啊
啊啊...啊啊啊
也就是说emacs把汉字也当作单词处理,只有在空格和标点符号的地方才给断行了。不知有没有什么解决方法?多谢!
爱因斯坦会弹钢琴
爱因斯坦会拉小提琴
爱因斯坦会骑自行车
爱因斯坦会拉小提琴
爱因斯坦会骑自行车
- leeward
- 帖子: 15
- 注册时间: 2007-08-04 22:25
- 联系:
Re: emacs开启word-wrap之后中文显示混乱
这个是word-wrap造成的,这个功能可以正确的对英文分词(因为英文就是单词),但对中文不行。
最简单的方法是在你的 .emacs 里添加如下的代码
这段代码的意思是在进入 visual-line-mode的时候,关闭word-wrap。不过这个方法有个缺点,就是每次进入该模式都会这样配置。
比如我写中文都在org-mode,其他情况下我用英文,于是我把这个配置只和org-mode关联起来,代码类似下面.
最简单的方法是在你的 .emacs 里添加如下的代码
代码: 全选
(add-hook 'visual-line-mode-hook
(lambda()
(if visual-line-mode
(setq word-wrap nil))))
比如我写中文都在org-mode,其他情况下我用英文,于是我把这个配置只和org-mode关联起来,代码类似下面
代码: 全选
(add-hook 'org-mode-hook '(lambda ()
(setq visual-line-fringe-indicators t)
(visual-line-mode)
(if visual-line-mode
(setq word-wrap nil))))
-
- 帖子: 1
- 注册时间: 2014-06-07 22:19
- 系统: Linux Mint 16
Re: emacs开启word-wrap之后中文显示混乱
这个也不解决问题。这时候Emacs会在窗口的右边断行。中文不会有问题,但英文单词和数字却会在中间断开。leeward 写了:这个是word-wrap造成的,这个功能可以正确的对英文分词(因为英文就是单词),但对中文不行。
最简单的方法是在你的 .emacs 里添加如下的代码这段代码的意思是在进入 visual-line-mode的时候,关闭word-wrap。不过这个方法有个缺点,就是每次进入该模式都会这样配置。代码: 全选
(add-hook 'visual-line-mode-hook (lambda() (if visual-line-mode (setq word-wrap nil))))
比如我写中文都在org-mode,其他情况下我用英文,于是我把这个配置只和org-mode关联起来,代码类似下面.代码: 全选
(add-hook 'org-mode-hook '(lambda () (setq visual-line-fringe-indicators t) (visual-line-mode) (if visual-line-mode (setq word-wrap nil))))