[vim ] Windows 上,執行 shell 先 chcp?

看板Editor作者 (哥)時間7年前 (2016/11/22 05:28), 7年前編輯推噓0(0018)
留言18則, 2人參與, 最新討論串1/2 (看更多)
在 Windows 上 cmd 改編碼可用 chcp 65001。 但即使讓這個成為預設值, gvim 每次帶出來的 cmd 還是 cp950 的編碼。 我試著去改 set shell, shellcmdflag 但都無果。 不知各位是否能指點一下。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.140.241.123 ※ 文章網址: https://www.ptt.cc/bbs/Editor/M.1479763712.A.79B.html

11/22 19:08, , 1F
set shellcmdflag=/u/c
11/22 19:08, 1F

11/23 04:41, , 2F
我對參數/u不熟。但這樣若print utf8字元在cp950 的cmd應
11/23 04:41, 2F

11/23 04:41, , 3F
該是是有問題?
11/23 04:41, 3F

11/23 07:57, , 4F
chcp 65001是讓cmd改用utf-8顯示 用/u是跑unicode模式
11/23 07:57, 4F

11/23 07:58, , 5F
可以用cmd/? chcp/?看說明 vim本身跑utf-8的話 chcp沒用
11/23 07:58, 5F

11/23 07:59, , 6F
要加/u讓cmd去跑unicode模式 vim讀到的才會正常的utf-8
11/23 07:59, 6F

11/23 10:04, , 7F
我現在搞不定的是,在 vim 下 :!chcp
11/23 10:04, 7F

11/23 10:05, , 8F
cmd 一直跑在 cp950。
11/23 10:05, 8F

11/23 10:06, , 9F
(我下 :!chcp 的用意是為了看它到底跑在什麼編碼下)
11/23 10:06, 9F

11/23 10:10, , 10F
例如下 :r !chcp 進來的字就是亂碼了。
11/23 10:10, 10F

11/23 19:16, , 11F
你的vim是cygwin附的?
11/23 19:16, 11F

11/24 00:59, , 12F
糟,竟然忘了講最重要的,我的是 gvim !完了,要被罵了!
11/24 00:59, 12F
※ 編輯: ggirls (223.137.254.115), 11/24/2016 01:00:09

11/24 01:09, , 13F
問看看而已 我的是設那樣就不會亂碼 可能有其它原因吧XD
11/24 01:09, 13F

11/24 01:31, , 14F
請問你也是用 gvim 嗎?
11/24 01:31, 14F

11/24 01:32, , 15F
如果是的話,只設shellcmdflag=/u/c ,用:r !chcp 就不會
11/24 01:32, 15F

11/24 01:33, , 16F
是亂碼了嗎?
11/24 01:33, 16F

11/24 08:04, , 17F
gvim沒錯 不過我是自編的 設這樣讀cmd的東西不會亂碼
11/24 08:04, 17F

11/24 12:26, , 18F
不好意思 結果是我記錯 切回win時試了一下 真的會亂碼XD
11/24 12:26, 18F
文章代碼(AID): #1OCsS0UR (Editor)
文章代碼(AID): #1OCsS0UR (Editor)