লাইনব্রেকগুলি 'এলএফ' হওয়ার প্রত্যাশিত তবে পাওয়া গেছে 'সিআরএলএফ' লাইনব্রেক-স্টাইল


156

গুল্প প্রকল্পে এস্লিন্ট ব্যবহার করার সময় আমি এই জাতীয় ত্রুটির সাথে একটি সমস্যার মুখোমুখি হয়েছি
Expected linebreaks to be 'LF' but found 'CRLF' linebreak-styleএবং আমি চলমান গুল্পের জন্য উইন্ডোজ পরিবেশ ব্যবহার করছি এবং পুরো ত্রুটি লগ নীচে দেওয়া হয়েছে

 Kiran (master *) Lesson 4 $ gulp
 Using gulpfile c:\Users\Sai\Desktop\web-build-tools\4\
 gulpfile.js
 Starting 'styles'...
 Finished 'styles' after 17 ms
 Starting 'lint'...
 'lint' errored after 1.14 s
 ESLintError in plugin 'gulp-eslint'
 sage: Expected linebreaks to be 'LF' but found 'CRLF'.
 ails: fileName: c:\Users\Sai\Desktop\web-build-tools\4\js\extra.js



$>Users\Sai\Desktop\web-build-tools\4\js\extra.js
error  Expected linebreaks to be 'LF' but found 'CRLF'  linebreak-style

আমিও অন্তর্ভুক্ত করেছি সম্ভাব্য ভুল নির্দেশ করে ত্রুটি হিসাবে অতিরিক্ত.js ফাইলও করেছি

function getWindowHeight() {
    return window.innerHeight;
}

getWindowHeight();

উত্তর:


202

linebreak-styleআপনার .eslintrc বা উত্স কোডে নীচের মতো নিয়ম কনফিগার রয়েছে কিনা তা পরীক্ষা করুন :

/*eslint linebreak-style: ["error", "unix"]*/

আপনি যেহেতু উইন্ডোজে কাজ করছেন, আপনি তার পরিবর্তে এই নিয়মটি ব্যবহার করতে চাইতে পারেন:

/*eslint linebreak-style: ["error", "windows"]*/

পড়ুন ডকুমেন্টেশন এর linebreak-style:

প্রচুর লোকের সাথে যখন বিভিন্ন সম্পাদক, ভিসিএস অ্যাপ্লিকেশন এবং অপারেটিং সিস্টেম রয়েছে তাদের বিকাশ করার সময় এটি ঘটতে পারে যে উল্লিখিত যে কোনও একটি দ্বারা পৃথক লাইন শেষ লেখা হয়েছে (বিশেষত উইন্ডোজ এবং ম্যাক সংস্করণ সোর্সট্রি একসাথে ব্যবহার করার সময় ঘটতে পারে)।

উইন্ডোজ অপারেটিং সিস্টেমে ব্যবহৃত লাইনব্রেকগুলি (নতুন লাইন) সাধারণত ক্যারেজ রিটার্ন (সিআর) হয় তারপরে একটি লাইন ফিড (এলএফ) এটি একটি ক্যারেজ রিটার্ন লাইন ফিড (সিআরএলএফ) তৈরি করে যেখানে লিনাক্স এবং ইউনিক্স একটি সাধারণ লাইন ফিড (এলএফ) ব্যবহার করে। সম্পর্কিত নিয়ন্ত্রণ ক্রমগুলি (এলএফের জন্য "\n") এবং "\r\n"(সিআরএলএফ) জন্য রয়েছে।

এটি একটি নিয়ম যা স্বয়ংক্রিয়ভাবে স্থিরযোগ্য। --fixকমান্ড লাইন বিকল্পটি স্বয়ংক্রিয়ভাবে এই নিয়ম দ্বারা রিপোর্ট সমস্যার সমাধান করা হয়েছে।

তবে আপনি যদি নিজের কোডটিতে CRLFলাইন-এন্ডিংগুলি ধরে রাখতে চান তবে (যেমন আপনি উইন্ডোজে কাজ করছেন) fixবিকল্পটি ব্যবহার করবেন না ।


এটি একটি হ্যাক আরও। @ কোডার দ্বারা অন্য উত্তর সঠিক। আপনাকে প্রকল্পের কনফিগারেশনটি পরিবর্তন করতে হবে
user959690

124

এই উত্তর অনুসারে লাইনব্রেক-স্টাইল ব্যবহার করে .eslintrc এ এড়াতে আমি (যেখানে আমি লাইন ফিডগুলি উপেক্ষা করতে এবং কোনও ফাইল পরিবর্তন করতে চাইনি) দরকারী বলে মনে করেছি: https://stackoverflow.com/a/43008668/1129108

module.exports = {
  extends: 'google',
  quotes: [2, 'single'],
  globals: {
    SwaggerEditor: false
  },
  env: {
    browser: true
  },
  rules:{
    "linebreak-style": 0
  }
};

এই. সমাধানের জন্য ধন্যবাদ
বেল্ফুয়েণ্টস

84

আপনি যদি vscode ব্যবহার করে থাকেন এবং আপনি উইন্ডোতে থাকেন আমি আপনাকে উইন্ডোর নীচে ডানদিকে বিকল্পটি ক্লিক করতে এবং এটি সিআরএলএফ থেকে এলএফ সেট করার পরামর্শ দিচ্ছি । কারণ আমাদের উইন্ডোজে ত্রুটিগুলি সরিয়ে দেওয়ার জন্য কনফিগারেশনটি বন্ধ করা উচিত নয়

আপনি যদি এলএফ / সিএলআরএফটি না দেখেন তবে স্থিতি দণ্ডে ডান ক্লিক করুন এবং সম্পাদক এর শেষ প্রান্তটি নির্বাচন করুন।

তালিকা


4
কীভাবে একটি প্রকল্পে এই কনফিগারেশনটি বিশ্বব্যাপী সেট করবেন? আমাকে প্রতিটি ফাইলের জন্য এটি করতে হবে
বিজেএএ

1
ভিএসকোডে বিশ্বব্যাপী সেটিংটি মনে হচ্ছে:, Settings -> Text Editor -> Files -> Eolসেট করা আছে \n। এটি কেবলমাত্র নতুন ফাইলগুলিতে প্রযোজ্য বলে মনে হয় যদিও আপনাকে এখনও প্রতিটি বিদ্যমান ফাইলটিকে ম্যানুয়ালি স্যুইচ করতে হবে।
ভি। রুবিনেটি

গৃহীত উত্তর (@ ধীরাজ ভেকাকোমা) এবং তারা আমার ইস্যুতে পরিপূরক হিসাবে এই দুজনই আমাকে সহায়তা করেছিল helped ধন্যবাদ!
রডরিগো.এ92

11

শুধু তৈরি autocrlf.gitconfig ফাইলে PARAM falseএবং কোড recloned। এটা কাজ করেছে!

[core] autocrlf = false


8

আমার সাথে ঘটেছিল কারণ আমি দৌড়ে git config core.autocrlf trueএসেছি এবং আমি ফিরে যেতে ভুলে গেছি।

এর পরে, আমি যখন নতুন কোডটি চেকআউট / টান করি, তখন সমস্ত এলএফ (ইউনিক্সে ব্রেক লাইন) সিআরএলএফ (উইন্ডোতে ব্রেক লাইন) দ্বারা প্রতিস্থাপিত হয়েছিল।

আমি লিন্টার দৌড়েছি, এবং সমস্ত ত্রুটির বার্তা রয়েছে Expected linebreaks to be 'LF' but found 'CRLF'

সমস্যা সমাধানের জন্য, আমি autocrlfদৌড়ে মানটি পরীক্ষা git config --list | grep autocrlfকরেছি এবং আমি পেয়েছি:

core.autocrlf=true
core.autocrlf=false

আমি গ্লোবাল জিআইটি কনফিগারেশন সম্পাদনা করেছি ~/.gitconfigএবং এর autocrlf = trueদ্বারা প্রতিস্থাপন করেছি autocrlf = false

এর পরে, আমি আমার প্রকল্পে গিয়ে নিম্নলিখিতগুলি ( src/ফোল্ডারে কোড অনুমান করে ) করছি:

CURRENT_BRANCH=$(git branch | grep \* | cut -d ' ' -f2);
rm -rf src/*
git checkout $CURRENT_BRANCH src/

8

যদি আপনি এটি চান crlf (উইন্ডোজ ইওল) ফাইল -> পছন্দসমূহ -> সেটিংসে যান। ব্যবহারকারী ট্যাবে "লাইনের শেষ" টাইপ করুন এবং নিশ্চিত করুন ফাইলগুলি: ইওলটি \ r \ n তে সেট করা আছে এবং আপনি যদি প্রিটিয়ার এক্সটেনশন ব্যবহার করছেন তবে নিশ্চিত করুন যে প্রাইটিয়ার: লাইনের শেষটি ক্রলফায় সেট করা আছেএখানে চিত্র বর্ণনা লিখুনঅবশেষে, আপনার eslintrc ফাইলে, এই নিয়মটি যুক্ত করুন:'linebreak-style': ['error', 'windows'] এখানে চিত্র বর্ণনা লিখুন


1
দরকারী ফটোগুলির জন্য ভোট দিয়েছেন, 10x
বেনশাবত্নোম

"ফাইল -> পছন্দসমূহ -> সেটিংসে যান" এই অ্যাপ্লিকেশনটি কী করা উচিত?
জেফ্রেপিয়া

6

আপনি যদি vscode ব্যবহার করছেন তবে আমি আপনাকে উইন্ডোর নীচে-ডানদিকে বিকল্পটি ক্লিক করতে এবং এটি সিআরএলএফ থেকে এলএফ সেট করার পরামর্শ দিচ্ছি ... এটি আমার ত্রুটিগুলি স্থির করেছে


এটা ঠিক কোথায়?
কানসাইরোবট

2
এটা আমার জন্য ঠিক! 10x
বার্বু বার্বু

1
এটি আমার সমস্যা সমাধান করেছে।
রিচার্ড ভার্জিস

2

আপনি যদি ওয়েবস্টোরম ব্যবহার করে থাকেন এবং আপনি উইন্ডোতে থাকেন আমি আপনাকে সেটিংস / সম্পাদক / কোড স্টাইল / সাধারণ ট্যাব ক্লিক করতে এবং ড্রপডাউন মেনু থেকে "উইন্ডোজ (\ r \ n) নির্বাচন করার পরামর্শ দিচ্ছি se এই পদক্ষেপগুলি রাইডারের ক্ষেত্রেও প্রযোজ্য হবে।

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


0

যখন আমি এসিলিন্ট সহ ভিএসকোড ব্যবহার করছিলাম তখন একই অবস্থা হয়েছিল। আপনি যদি ভিএসকোড ব্যবহার করেন,

1 - অঞ্চলটি ক্লিক করুন যে নামটি এলএফ বা সিআরএলএফ উভয়ই হতে পারে যেখানে ভিএসকোডের নীচের ডানদিকে রয়েছে।

2 - ড্রপ-ডাউন মেনু থেকে এলএফ নির্বাচন করুন।

এটা আমার জন্য কাজ।

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

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