[แปลง] หมายความว่าอะไรที่ด้านล่างของกลุ่ม?


37

ฉันมีไฟล์บันทึกและเมื่อฉันเปิดไฟล์ผ่านเสียงเรียกเข้าจะไม่สามารถอ่านได้และมี [แปลง] ที่ด้านล่าง [แปลง] หมายความว่าอะไร

มีวิธีแก้ไขปัญหารูปแบบเพื่อให้มนุษย์อ่านได้หรือไม่?


ไม่มีการรับประกันว่าไฟล์บันทึกสามารถอ่านได้อย่างมนุษย์ปุถุชน อย่างน้อยไฟล์บางไฟล์/var/log/ไม่ โปรแกรมใดสร้างไฟล์บันทึก ชื่อไฟล์คืออะไร
Anthon

@Anon บันทึกต้นฉบับดูดี แต่หลังจากการหมุนบันทึกโดย daemontools จะไม่สามารถอ่านได้อีกต่อไป
Mingyu

มันถูกบีบอัดด้วยการหมุนหรือเปล่า คุณเรียกใช้fileคำสั่งในไฟล์หรือไม่
Anthon

@Anthon dataประเภทไฟล์ นั่นหมายความว่าอย่างไร?
Mingyu

1
หลังจากที่ผมทำงาน:set fileencoding=utf-8, เอาท์พุทfile dataเมื่อฉันทำงานfileกับไฟล์บันทึกดั้งเดิมมันจะออกgzip compressed data, from Unixมา ดังนั้นทางออกที่เหมาะสมคือการรันfileก่อนแทนที่จะรัน:setซึ่งจะทำให้ไฟล์ยุ่งเหยิงยิ่งขึ้น
Mingyu

คำตอบ:


31

หมายความว่าvimตรวจพบว่าไฟล์ไม่ตรงกับชุดอักขระที่กำหนดโดยตำแหน่งที่ตั้งของคุณและทำการแปลง หากคุณเรียกใช้คำสั่ง:setจากภายในvim:

:set
--- Options ---
  autoindent          fileformat=dos      scroll=7            textwidth=70
  background=dark     filetype=asciidoc   shiftwidth=2        ttyfast
  cscopetag           helplang=en         softtabstop=2       ttymouse=sgr
  cscopeverbose       hlsearch            syntax=asciidoc
noendofline           list                tabpagemax=3
  expandtab           ruler               textmode
  backspace=indent,eol,start
  comments=s1:/*,ex:*/,://,b:#,:%,:XCOMM,fb:-,fb:*,fb:+,fb:.,fb:>
  cscopeprg=/usr/bin/cscope
  fileencoding=utf-8
  fileencodings=ucs-bom,utf-8,latin1

สังเกตเห็น 2 ตัวเลือกสุดท้ายfileencoding& fileencodings.

แรกคือการเข้ารหัสที่ใช้สำหรับไฟล์ปัจจุบันที่สองคือรายการที่คั่นด้วยเครื่องหมายจุลภาคของการเข้ารหัสที่รู้จัก

ดังนั้นเมื่อคุณเห็นข้อความที่vimจะบอกคุณว่ามันเสร็จสิ้นการแปลงไฟล์จากไปfileencodingencoding

ตรวจสอบ:help fileencodingหรือ:help encodingสำหรับรายละเอียดเพิ่มเติม

การอ้างอิง

ฉันพบกระทู้ด้านล่างซึ่งฉันใช้เป็นแหล่งเมื่อคำตอบนี้ ไซต์เดิมหายไปแล้ว (เข้าถึงได้ในประวัติคำตอบนี้) ดังนั้นฉันจึงย้ายเนื้อหาของเธรดนั้นที่นี่เพื่อลูกหลานของฉัน ลิงค์ยังคงอยู่ในเครื่อง Wayback

#1 Eli the Bearded January 21st, 2004 - 06:51 pm ET | Report spam
In comp.os.linux.misc, Leon. wrote:
Hide the quote
"Gaétan Martineau" wrote in message
news:E9jLb.2903$
> [ system_notes]$ vi installation_chouette.txt
> What means the [converted] at the bottom of the screen, as in:
> "installation_chouette.txt" [converted] 2576L, 113642C

It means that vim detected that the file did not match the
charset given by your locale and made a conversion. What does

:set

Tell you about "fileencoding" and "fileencodings"? The first is
the encoding used for the current file, the second is a comma
separated list of recognized encodings.

Hide the quote
> This file has accented characters. How can I save the file so that if I
> reload if again, I do not see "converted"?



Figure out what charset you want, and then

:set fileencoding=[charset]
:w

Hide the quote
It means deleting the Microsoft Dos/ Windows CR LF end of lines, to just
LF - unix standard end of lines.

It does not. If you open a file with DOS line ends, vim reports [dos]
after the filename, not [converted]. If you do have a dos file that
you wish to convert to unix line ends, you can

:set fileformat=unix
:w

Elijah

11

ในvimโหมดคำสั่งพิมพ์:

:help read-messages

คุณสามารถดู:

[converted]      conversion from 'fileencoding' to
                 'encoding' done

โดยทั่วไปหมายความว่ากลุ่มที่ตรวจพบไฟล์ไม่ตรงกับชุดอักขระที่กำหนดโดยโลแคลของคุณและทำการแปลง

หากต้องการดูรายละเอียดเพิ่มเติมลอง,:help fileencoding:help fileencodings


2

หมายความว่าไฟล์บนดิสก์ไม่ได้ใช้ชุดอักขระเดียวกันกับพื้นที่หน่วยความจำของ Vim และการแปลงจากที่หนึ่งไปอีกที่สำเร็จ กดแป้น escape และพิมพ์คำสั่งนี้

:set fileformat=unix

บันทึกไฟล์และลองอ่านอีกครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.