সম্পাদকীয়রে লাইন ব্রেক এবং ক্যারেজের রিটার্ন দেখুন


177

লিনাক্সের এমন কোনও পাঠ্য সম্পাদক সম্পর্কে কি কেউ জানেন যা আমাকে লাইন ব্রেক এবং ক্যারেজের রিটার্ন দেখতে দেয়? ভিম কি এই বৈশিষ্ট্যটি সমর্থন করে?


দ্রষ্টব্য: কখনও কখনও নিউলাইন ($) এবং ক্যারিজ রিটার্ন (^ এম) অনেকগুলি রঙিন স্কিমগুলিতে লুকানো থাকে এবং এসএমএস-তে পুট্টি ব্যবহার করার সময়।
ভেনেসা সানচেজ

1
ওপি আমার ধারণা আপনার নির্বাচিত উত্তরটি পুনর্বিবেচনা করা উচিত। হিসাবে নির্বাচিত উত্তর কাজ করে না। তবে ক্যাপ্টসাল্টিজ্যাক উত্তরটি ভাল কাজ করে।
জাভাশেরিফ

ওপি যা দেখায় তা হ'ল @arno এর সমাধান। আমার দু'টি দেখার দরকার ছিল, কারণ আমার কাছে এলোমেলোভাবে সমস্ত 3 ফাইল ফর্ম্যাট ব্যবহার করে একটি ফাইল আছে ... এবং আরনোর সমাধান কাজ করে
ওয়েন ওয়াকার

উত্তর:


137

:set listভিমে সাদা অংশ দেখাবে। লাইনের $শেষটি ' ' হিসাবে দেখায় এবং ক্যারেজ রিটার্ন সাধারণত ' ^M' হিসাবে প্রদর্শিত হয় ।


2
একই প্রশ্ন এখানে: superuser.com
অ্যালেক জ্যাকবসন

252
ভুল, অক্ষর (সিআর) :set listপ্রদর্শন করবে না ^M-bVi / vim এ অপশন সরবরাহ করা কাজ করবে। অথবা, একবার :e ++ff=unix
ভিএম

15
এফওয়াইআই, "সেট তালিকা" মোডটি বন্ধ করতে, ব্যবহার করুন:set nolist
টোমোফুমি

@ টোমফমি আপনার সম্পাদনা সহ একটি সম্পাদনা স্বাগত জানানো হবে!
পিপো

1
ভুল উত্তর. : সেট তালিকা এম এম অক্ষর (সিআর) প্রদর্শন করবে না। Vi-vim -b বিকল্পটি ব্যবহার করবে।
ন্যানোসফ্ট

264

সরকারী উত্তরের সাথে একমত নন:

:set list^ এম অক্ষর (সিআর) প্রদর্শন করবে না । Vi / vim- এ বিকল্প সরবরাহ করার কাজ করবে। অথবা, একবার ভিম লোড হয়ে গেলে টাইপ করুন :e ++ff=unix


4
এটি সিনট্যাক্স। :help editশো e[dit]! [++opt] [+cmd]। এবং :help ++eবলছে যে [++ অপ্ট] যুক্তিটি 'ফাইল ফর্ম্যাট' এর মানকে জোর করতে ব্যবহার করা যেতে পারে [..]
ডেনিস

19
কেবল পরিষ্কার করতে, :set listনিউলাইন দেখায় ( $), :e ++ff=unixসিআর ( ^M) দেখায় ; যদি আপনি উভয়ই দেখতে চান :set listতবে:e ++ff=unix
ইয়েবো ইয়াং

5
@ ডেনিসের মন্তব্যে প্রসারিত করতে, :set ff=unixভিমকে লাইন এন্ডিংকে ইউনিক্স স্টাইলে পরিবর্তন করতে বলেছেন (ফাইল ফর্ম্যাট সেট করার অংশ হিসাবে), সুতরাং এম এম অক্ষর আর নেই (এবং তাই প্রদর্শিত হয় না)। :e ++ff=unixএটিকে ফাইল-ফর্ম্যাটটি unixআসলে সামগ্রীগুলি পরিবর্তন না করেই বলপূর্বক সেট করতে বলে । সুতরাং ভিম এটিকে ইউনিক্স ফাইলের মতো পড়েন, সিআর অক্ষরগুলি অতিরিক্ত হিসাবে দেখেন এবং এগুলি এম এম হিসাবে প্রদর্শন করেন।
- মনিকা

2
তবুও কোনও vimকারণে আমার পক্ষে কাজ করে না ... আমি না -bবিকল্প হিসাবে বোঝাতে চাইছি না বা এর :e ++ff=unix
ভিতরেও ছিলাম

3
ঠিক আছে: e ++ ff = ইউনিক্স কাজ করেছে। এখন আমি কীভাবে এটি বন্ধ করব?
ক্রু

78

ষষ্ঠটি x0Aপরবর্তী লাইনে পরবর্তী পাঠ্য দেখিয়ে নিউলাইনগুলি (এলএফ অক্ষর, কোড ) দেখায় ।

ব্যবহার করুন -bবাইনারি মোডের জন্য সুইচ। যেমন vi -b filenameবা vim -b filename --

এটি তখন সিআর অক্ষরগুলি ( x0D) প্রদর্শন করবে যা সাধারণত ইউনিক্স স্টাইল ফাইলগুলিতে অক্ষর হিসাবে ব্যবহৃত হয় না ^M


আমার সাধারণত লাইনটি শেষ হওয়ার দরকার নেই, কারণ আমি বেশিরভাগ Unixপরিবেশে কাজ করি । তবে আমি যদি ফাইলে কিছু থাকে তবে উইন্ডোজ টাইপের লাইন শেষ সম্পর্কে সতর্ক করতে চাই। হবে vi -b filenameবা :set binaryশুধু দেন ^Mযদি এটি একটি উইন্ডোজ টাইপ ফাইল এবং অন্য কোন লাইন শেষা w শ অন্যথায় কে?
alpha_989

30

কেবল :set listসিআরকে বাইরে ^Mছাড়া কেন দেখাবে না e ++ff=unixএবং এর সাথে কেন :set listকিছুই করার নেই তা স্পষ্ট করার জন্য ^M

অভ্যন্তরীণভাবে যখন তেজ সার্চ তার বাফার মধ্যে একটি ফাইল, এটা তার নিজস্ব প্রতিনিধিত্ব আছে এমন সমস্ত লাইন শেষ অক্ষর প্রতিস্থাপন (এটা কল দিন $'গুলি)। কোন অক্ষরগুলি অপসারণ করা উচিত তা নির্ধারণ করতে, এটি প্রথমে সনাক্ত করে যে কোন ফরম্যাটে লাইন সমাপ্তি কোন ফাইলে সংরক্ষণ করা হয়। শুধুমাত্র CRLF থাকে তাহলে '\r\n'অথবা শুধুমাত্র সি আর '\r'বা শুধুমাত্র এলএফ '\n'লাইন শেষ অক্ষর, তারপর 'fileformat'সেট করা হয় dos, macএবং unixযথাক্রমে।

যখন listবিকল্প সেট করা থাকে, তেজ প্রদর্শন $চরিত্র যখন লাইন বিরতি কোন ব্যাপার কি ঘটেছে fileformatবিকল্প সনাক্ত করা হয়েছে। এটি লাইন-ব্রেকগুলির নিজস্ব অভ্যন্তরীণ উপস্থাপনা ব্যবহার করে এবং এটি এটি প্রদর্শন করে।

এখন আপনি যখন ডিস্কে বাফার লেখেন , ভিম লাইন-এন্ডিং অক্ষরগুলি সন্নিবেশ করায় যা fileformatবিকল্পগুলি সনাক্ত করা হয়েছে সেই অনুসারে , প্রয়োজনীয় সমস্ত $অক্ষরের সাথে প্রয়োজনীয়ভাবে অভ্যন্তরীণ রূপান্তর করে । যদি fileformatঘটনাটি ঘটে থাকে unixতবে এটি কেবল \nতার অভ্যন্তরীণ লাইন-ব্রেকের জায়গায় লিখবে ।

কৌশলটি হ'ল ভিমকে একটি dosএনকোডযুক্ত ফাইলটি পড়তে বাধ্য করা unix। নেট এফেক্টটি হ'ল এটি সমস্তের \nছেড়ে \rযাওয়া'র ছোঁয়াছা অপসারণ করবে এবং এগুলি ^Mআপনার বাফার হিসাবে প্রদর্শিত হবে । সেটিং :set listঅতিরিক্ত হিসাবে অভ্যন্তরীণ লাইন-এন্ডিংস দেখায় $। সর্বোপরি, আপনি এনকোডড লাইন-ব্রেকগুলির ^M$জায়গায় দেখতে পাচ্ছেন dos

এর :set listসাথে দেখানোর কোনও সম্পর্ক নেই যে লক্ষ্য করুন ^M। সন্নিবেশ মোডে অনুসরণ করে listএকক সিআর ব্যবহার করে আপনি এটি নিজের দ্বারা পরীক্ষা করে নিতে পারেন ( প্রথমে আপনি বিকল্পটি অক্ষম করেছেন তা নিশ্চিত করুন ) । ডিস্কে বাফার লেখার পরে এবং এটি আবার খোলার পরে আপনি বিকল্পটি 0 তে সেট করা সত্ত্বেও দেখতে পাবেন ।CTRL-VEnter^Mlist

আপনি http://vim.wikia.com/wiki/File_format বা :help 'fileformat'ভিমে টাইপ করে ফাইল ফর্ম্যাটগুলি সম্পর্কে আরও জানতে পারেন ।


11

নিম্নলিখিত কমান্ড চেষ্টা করুন।

: বাইনারি সেট করুন

ভিআইএম-এ, "-b" কমান্ড লাইন বিকল্পটি ব্যবহার করার মতো একই কাজ করা উচিত। আপনি যদি এটি আপনার প্রারম্ভকালে (অর্থাত্। Vimrc) ফাইলে রাখেন তবে এটি সর্বদা আপনার জন্য থাকবে।

অনেক * নিক্স সিস্টেমে একটি "ডস 2 ইউনিক্স" বা "ইউনিক্সডোডস" কমান্ড রয়েছে যা ফাইলটি প্রক্রিয়া করতে পারে এবং কোনও সন্দেহজনক লাইন সমাপ্ত সমস্যা সমাধান করতে পারে। লাইন শেষের সাথে যদি কোনও সমস্যা না হয় তবে ফাইলগুলি পরিবর্তন করা হবে না।


দুর্ভাগ্যক্রমে আমার সিস্টেমে (উবুন্টু 16.04) এর set binaryমতো নয় vim -b filename.py। কোন ধারণা কেন? আমি যাচাই করেছিলাম helpএবং মনে হয় আপনি যা বলছেন তা সাধারণত সঠিক। আমি কেন বুঝতে পারি যে এটি কেন এমন?
alpha_989

:e ++ff=unix^Mআমি unixটাইপ করা ফাইলগুলি ব্যবহার করার সময় সঠিকভাবে প্রদর্শন করে না এবং প্রদর্শন করে না .. সুতরাং আমার ধারণা সমস্যাটি আপাতত সমাধান হয়ে গেছে ...
alpha_989

6

কমান্ডের একটি তালিকা চালানোর জন্য, আপনাকে .vimrc ফাইল সম্পাদনা করার পরামর্শ দিচ্ছি। আপনার .vimrc ফাইলটি সম্পাদনা করুন:

cat >> ~/.vimrc <<EOF
set ffs=unix
set encoding=utf-8
set fileencoding=utf-8
set listchars=eol:¶
set list
EOF

আপনি যখন ভিআইএম কার্যকর করছেন তখন .vimrc তে কমান্ডগুলি কার্যকর করা হয় এবং আপনি এই উদাহরণটি দেখতে পারেন:

My line with CRLF eol here ^M¶

2

ব্যবহার করে catএবং -Aআপনি এর মতো নতুন লাইনগুলি দেখতে $পাবেন^I
cat -A myfile


0

আপনি জিডিট এডিটর ব্যবহার করে ব্রেক লাইন দেখতে পারেন ।

প্রথমত, যদি আপনি ইনস্টল না করে থাকেন:

sudo apt-get install gedit

এখন, জিডিট প্লাগইন ইনস্টল করুন :

sudo apt-get install gedit-plugins

এবং অঙ্কন স্পেস প্লাগইন নির্বাচন করুন, পছন্দসমূহে প্রবেশ করুন এবং নতুন লাইন আঁকুন চয়ন করুন

এখানে চিত্র বর্ণনা লিখুন

এখানে চিত্র বর্ণনা লিখুন

ভিএসকোড ব্যবহার করে আপনি লাইন এন্ডিং এক্সটেনশন ইনস্টল করতে পারেন ।

সাব্লাইম টেক্সট 3 এর একটি RawLineEdit নামে একটি প্লাগইন রয়েছে যা লাইন শেষ দেখায় এবং স্বেচ্ছাসেবী লাইন-সমাপ্তির প্রকার সন্নিবেশকে অনুমতি দেয়

shift + ctrl + p এবং প্লাগইনটির নামটি টাইপ করুন এবং লাইন শেষ দেখানোর জন্য টগল করুন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.