অবিচলিত: প্রদত্ত ফাইল টাইপের জন্য সিনট্যাক্স সেট করবেন?


108

আমি একটি সিমফনি 2 প্রকল্পে কাজ করছি যা টুইগ ব্যবহার করে, এবং ফাইল টাইপগুলি myfile.html.twig। ভিম সিনট্যাক্স হাইলাইটিংটি স্বয়ংক্রিয়ভাবে সনাক্ত করে না এবং তাই এটি প্রয়োগ করে না। আমি :set syntax=HTMLফাইলটি খোলার পরে ব্যবহার করতে পারি তবে ফাইলগুলির মধ্যে ঝাঁপ দেওয়ার সময় এটি একটি ব্যথা।

ভিএম-তে নির্দিষ্ট ফাইল টাইপের জন্য সিনট্যাক্স হাইলাইট করে অবিরামভাবে সেট করার কোনও উপায় আছে কি?

উত্তর:


120

আপনি এটি autocmdসম্পাদন করতে ব্যবহার করতে পারেন, অর্থাত:

augroup twig_ft
  au!
  autocmd BufNewFile,BufRead *.html.twig   set syntax=html
augroup END

কাজ করা উচিত.


4
একটি বন্ধু কেবল এটি আমার দিকেও নির্দেশ করেছে। ফাইল টাইপ au BufRead,BufNewFile *.html.twig set filetype=twigসেট করুন: বাক্য au BufRead,BufNewFile *.html.twig set syntax=HTML
গঠনটি

32
আমি এই লাইনটি ~/.vim/ftdetect/html.twig.vimফাইলের মধ্যে রাখার পরামর্শ দিচ্ছি (আপনার এটি তৈরি করা উচিত), যা এই জাতীয় স্বতঃসম্পূর্ণতার জন্য সঠিক জায়গা।
xaizek

4
@xaizek আমি বুঝি যে এই সুপারিশ করা হয়, কিন্তু আপনি কোন ধারণা কেন এটা যদি আমি রাখা আমার জন্য কাজ করে না আছে ~/.vimrcপরিবর্তে ~/.vim/ftdetect/?
হারালান ডবরেভ

4
@ হারালানডোব্রেভ, সম্ভবত এই লাইনের পরে সংজ্ঞায়িত অন্য একটি স্বতঃসমানু দ্বারা এটি ওভাররাইট করা হবে। চালান :autocmd BufNewFile,BufRead *.html.twigতেজ ভিতরে সমস্ত রেজিস্টার্ড autocommands দেখতে (এছাড়াও শুধুমাত্র পৃথক ঘটনা সঙ্গে চেষ্টা করুন, BufNewFileএবং শুধুমাত্র BufRead)। এর আউটপুটও চেক করুন :verbose set syntax?
xaizek

4
এই সমাধানটি সন্ধান করা কতটা সহজ ছিল আমাকে কামনা করেছিল যে ভিম উইকিটির অস্তিত্ব নেই
জারেড বিচ

67

আপনার নিম্নলিখিতটিতে একটি প্যাসেজ যুক্ত করুন .vimrc:

" Set the filetype based on the file's extension, overriding any
" 'filetype' that has already been set
au BufRead,BufNewFile *.html.twig set filetype=html

বা

" Set the filetype based on the file's extension, but only if
" 'filetype' has not already been set
au BufRead,BufNewFile *.html.twig setfiletype html

7
এটি গৃহীত উত্তরটির চেয়ে ভাল জেনেরিক উত্তর। যদি ভিএম ফাইলের ধরণ সনাক্ত করতে না পারে (এবং স্বয়ংক্রিয়ভাবে সিনট্যাক্স হাইলাইট সরবরাহ করে), কেবল ফাইলের বাক্য গঠন ঠিক না করে ফাইল টাইপ সেট করা ভাল।
mrfred

4
setfiletypeset filetypeকমপক্ষে এটি হওয়া উচিত আমি কীভাবে এটি কাজ করতে পারি
dau_sama

4
@ দাউ_সামা setfiletype=htmlবৈধ সিনট্যাক্স নয়; আমি উত্তর ঠিক করেছি। নোট যে setfiletype htmlএবং set filetype=htmlবিভিন্ন জিনিস করতে, যেমন উত্তর উল্লেখ করেছে।
বিডেশম

11
au BufNewFile,BufRead,BufReadPost *.twig set syntax=HTML

~/.vimrcসেটিংস অবিচ্ছিন্ন করতে এই লাইনটি যুক্ত করুন ।


3

আমি জানি এটি সরাসরি প্রশ্নের উত্তর দেয় না, তবে এই প্রশ্নের উদ্দেশ্যটির উত্তর দেয় যা টুইগ / সিমফনি 2 এর সাথে কাজ করে সিনট্যাক্স হাইলাইট করা

আমি আপনাকে https://github.com/beyondwords/vim-twig (আমার নয়) চেক আউট করার পরামর্শ দিচ্ছি , যা সরবরাহ করে:

  • * .html.twig এর সিনট্যাক্স হাইলাইটিং ফাইল,
  • একই জন্য ফাইল টাইপ সনাক্তকরণ, এবং
  • ফাইল টাইপ প্লাগইন, * .html.twig ফাইল সম্পাদনা করার সময় আপনাকে বিভিন্ন সেটিংসে প্রয়োজনীয় পরিবর্তন করতে দেয়

আশা করি এটা কাজে লাগবে

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