আমি ন্যানোতে সিনট্যাক্স হাইলাইটিং কীভাবে সক্ষম করব?


184

ন্যানো কি জিডিট এবং ভিএম এর মতো সিনট্যাক্স হাইলাইট করতে পারে? আমি কীভাবে এটি সক্ষম করতে পারি? আমার কমপক্ষে ব্যাশ এবং পাইথন সিনট্যাক্স হাইলাইটগুলি দরকার।


1
গিট রেপোতে সিনট্যাক্স ফাইলগুলির জন্য অনেক ধন্যবাদ, আমি এটি এখন আমার সমস্ত সার্ভারে ব্যবহার করি ... ভাল কাজ চালিয়ে যাচ্ছি !!!

1
@ জিন মন্তব্য করুন এবং উত্তরের জন্য ধন্যবাদ। রেপো তার কাছে জমা হয়, আমাকে নয়, প্রশ্ন জিজ্ঞাসা একজন।
অক্সভিভি

উত্তর:


175

ন্যানো সম্পাদক নিজেই কয়েকটি ভাষা এবং স্ক্রিপ্টগুলির জন্য সিনট্যাক্স হাইলাইট করে। চেক আউট/usr/share/nano/

nits@nits-excalibur:~$ ls /usr/share/nano/
asm.nanorc     fortran.nanorc   man.nanorc     ocaml.nanorc   ruby.nanorc
awk.nanorc     gentoo.nanorc    mgp.nanorc     patch.nanorc   sh.nanorc
c.nanorc       groff.nanorc     mutt.nanorc    perl.nanorc    tcl.nanorc
cmake.nanorc   html.nanorc      nano-menu.xpm  php.nanorc     tex.nanorc
css.nanorc     java.nanorc      nanorc.nanorc  pov.nanorc     xml.nanorc
debian.nanorc  makefile.nanorc  objc.nanorc    python.nanorc

আপনার ~/.nanorcলাইনটির সাথে সামঞ্জস্যপূর্ণ কিছু সহ উপস্থিত আপনার ব্যবহারকারীর ন্যানো কনফিগারেশন ফাইলের সাথে এটি লিঙ্ক করুন :

nits@nits-excalibur:~$ cat ~/.nanorc
include /usr/share/nano/sh.nanorc

এখন, আপনি সংযুক্ত যে কোনও ফাইলের জন্য সিনট্যাক্স হাইলাইটিং ন্যানোতে সক্ষম করা হয়েছে (আপনি একাধিক ফাইলের সাথে লিঙ্কও করতে পারেন)

সিনট্যাক্স হাইলাইট করার স্ক্রিনশট

দ্রষ্টব্য: কখনও কখনও আপনি segmentation faultআপনার ~/.nanorcফাইল সম্পাদনা করার পরে একটি পেতে পারেন । যদি এই জাতীয় ত্রুটি দেখা দেয় তবে LANG পরিবেশের ভেরিয়েবলটি সেট না করা সহায়তা করে। আপনি unset LANGটার্মিনালে এটি আনসেট করতে পারেন । (সমাধান এখান থেকে প্রাপ্ত )

আপনি যদি আপনার ব্যাশ হাইলাইট করে সন্তুষ্ট না হন তবে অন্যান্য সমাধানও রয়েছে। এর একটি উদাহরণ এখানে পাওয়া যাবে

include /usr/share/nano/*আপনার ন্যানো সংস্করণ যদি এটি সমর্থন করে তবে সমস্ত ভাষা হাইলাইট করার জন্য আপনি ~ / .nanorc ফাইলটিতেও লিখতে পারেন।


1
এই লাইনগুলি নিরবিচ্ছিন্ন /etc/nanorc- বিশ্বব্যাপী সেটিংসগুলি কি ওভাররাইট করা হচ্ছে ~/.nanorc? আমি কীভাবে অক্ষম করব .nanorc?
অক্সভিভি

13
ওহ অপেক্ষা করুন, আমার কাছে একটি ~/.nanorcফাইলও নেই।
অক্সভিভি

1
অপেক্ষা করুন, অপেক্ষা করুন, কীভাবে সমস্ত includeলাইনে সিনট্যাক্স হাইলাইটগুলি সক্ষম না করে বিশ্বব্যাপী সেটিং কীভাবে আসে .nanorc?
অক্সভিভি

9
ls -1 /usr/share/nano/*.nanorc | sed 's/^\//include \//' >> ~/.nanorcএগুলি আপনার সমস্ত .nanorc ফাইলে সংযুক্ত করুন বা এটি উপস্থিত না থাকলে এটি তৈরি করুন।
থম পোর্টার

9
include /usr/share/nano/*কাজ করছে না
জারেক জাকুবউস্কি

74

হ্যাঁ আপনি পারেন, তবে ডিফল্ট বাক্য সংজ্ঞাটি বেশ নিখুঁত এবং অসম্পূর্ণ। আমি এখানে সংজ্ঞাগুলির আরও নিখুঁত সেট বজায় রাখছি , যে কেউ তাদের দরকারী মনে করে।

ইনস্টল করতে, চালান:

git clone https://github.com/nanorc/nanorc.git
cd nanorc
make install

এই লাইনগুলিকে ~ / .nanorc এ যুক্ত করুন

include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/ALL.nanorc

আপনি যেটির জন্য রঙিন করতে চান তা উল্লেখ করুন এবং আপনার পছন্দগুলিতে আপনাকে এই রঙগুলি টিউন করতে হবে। দ্য ALL.nanorcএখনো শ্রেণীবিভক্ত করা হয়নি এমন ফাইলের জন্য বৈশিষ্ট্য বর্ণনা করা হয়েছে। এগুলি আপনার শেষ করা পালিশ পণ্য নয়, শুরু করার জন্য প্রয়োজনীয় সরঞ্জাম not


6
গিটহাবের সেই সুন্দর সিনট্যাক্স সংজ্ঞা রাখার জন্য ধন্যবাদ।
রুবেেন্স মারিউজো

3
আমার * .js ফাইলগুলি কাজ করছিল না ... সম্পাদিত / ইত্যাদি / ন্যানোর্কের অন্য কোনও সিনট্যাক্স অপসারণ করতে FAQ github.com/nanorc/… অনুযায়ী অন্তর্ভুক্ত । ♥ ন্যানো an ন্যানোর্ক
কার্লটন

5
আমি ম্যাক ওএসএক্স-এ আপনার সিনট্যাক্স ডিফল্টগুলি ইনস্টল করেছি। আমি কেবল একটি জিনিস খেয়াল করতে পারি, যা পাইথনের ওপেন-ব্র্যাকেটের কালো রঙটি আমার টার্মিনালের কালো পটভূমির বিরুদ্ধে হারিয়ে যায়
টম ব্যসবি

5
আসলে সমস্যা আছে, রঙিন কিছু লেখা কালো! আমাদের টার্মিনাল ব্যাকগ্রাউন্ড যদি কালো হয় তবে এই শব্দগুলি অদৃশ্য!
ডিউকভিন

8
আপনার একটি মৃত লিঙ্ক আছে
not2qubit

52

আমি উপলভ্য সমস্ত ভাষা দ্রুত সক্ষম করতে এই আদেশটি ব্যবহার করেছি।

find /usr/share/nano/ -iname "*.nanorc" -exec echo include {} \; >> ~/.nanorc

অন্যান্য উত্তরে উল্লিখিত হিসাবে, /usr/share/nano/বিভিন্ন ভাষার সংজ্ঞা রয়েছে।

$ ls /usr/share/nano
asm.nanorc     fortran.nanorc   man-html       ocaml.nanorc   ruby.nanorc
awk.nanorc     gentoo.nanorc    man.nanorc     patch.nanorc   sh.nanorc
cmake.nanorc   groff.nanorc     mgp.nanorc     perl.nanorc    tcl.nanorc
c.nanorc       html.nanorc      mutt.nanorc    php.nanorc     tex.nanorc
css.nanorc     java.nanorc      nanorc.nanorc  pov.nanorc     xml.nanorc
debian.nanorc  makefile.nanorc  objc.nanorc    python.nanorc

এছাড়াও উল্লেখ করা হয়েছে, কোনও ভাষার হাইলাইটিং সক্ষম করার জন্য, আপনি includeযে ভাষা সংজ্ঞাটি নিজের ~/.nanorcফাইলটিতে সক্ষম করতে চান তার জন্য যুক্ত করুন। সুতরাং, উদাহরণস্বরূপ, সি / সি ++ সক্ষম করতে আপনি এই লাইনটি যুক্ত করবেন।

include /usr/share/nano/c.nanorc

findনিদিষ্ট ডিরেক্টরির মধ্যে ফাইল বা ডিরেক্টরি জন্য কমান্ড অনুসন্ধান।

  • -inameপতাকাটি কেবল এমন নামের সাথে ফাইলগুলি অনুসন্ধান করতে বলে যা শেষ হয় .nanorc
  • -execপতাকা পাওয়া প্রতিটি ফাইল উপর চালানো কমান্ড সংজ্ঞায়িত করে।
  • {}ফাইলের নাম দিয়ে প্রতিস্থাপিত হয়।
  • \;কমান্ডটি কার্যকর করতে কমান্ডের শেষটি বোঝাতে ব্যবহৃত হয় find
  • শেষ পর্যন্ত, >> ~/.nanorcআউটপুটটিকে আপনার ~/.nanorcফাইলে সংযুক্ত করার কারণ ঘটায় ।

দুর্দান্ত টিপ এবং ব্যাখ্যা, ধন্যবাদ অনেক মানুষ! ;)
ডেভনকোড

ধন্যবাদ এবং দেখে মনে হচ্ছে না যে আপনার iname পতাকা প্রয়োজন। নিম্নলিখিতগুলি পাশাপাশি কাজ করছে বলে মনে হয় /usr/share/nano/*.nanorc
মিলিন্ড

থানস্ক খুব!
VIX

7

এটিতে ডিফল্টরূপে অন্তর্ভুক্ত করা সমস্ত সিনট্যাক্স হাইলাইটিং প্লাগইন এবং আপনি / usr / share / nano এ যুক্ত হওয়া উচিত:

find /usr/share/nano -name '*.nanorc' -printf "include %p\n" > ~/.nanorc

অথবা, সম্পাদনা / ইত্যাদি / ন্যানোর্ক এবং দেখুন যে আপনি এতে অন্তর্ভুক্ত করতে পারেন না om

আপনার যদি ন্যানোর এমন একটি সংস্করণ থাকে যা। Nanorc ফাইলে ওয়াইল্ডকার্ড গ্রহণ করতে অস্বীকার করে তবে এটি কাজ করে।

আপনি প্রতিটি অতিরিক্ত .nanorc রঙ কনফিগার যুক্ত করার সময় এই লাইনটি চালান।



2

আপনি সমস্তটি অন্তর্ভুক্ত করতে এটি ব্যবহার করতে পারেন: (এটি ~ / ন্যানোর্ক ফাইলটিতে যুক্ত করুন)

include "/usr/share/nano/*.nanorc"

শুভ কোডিং!


1
wget -r -nH --cut-dirs=3 --no-parent --reject="index.html*" https://nanosyntax.googlecode.com/svn/trunk/syntax-nanorc/ -P ~/.nano-syntax
for i in `ls --color=never -1 ~/.nano-syntax/*.nanorc` ; do echo "include $i" >> ~/.nanorc ; done

22
এটি সহায়ক হবে যদি আপনি ব্যাখ্যা করতে পারেন যে এটি কেন নতুন ব্যবহারকারীদের জন্য একটি দরকারী উত্তর। কমান্ড কি করছে? এটা কি পরিবর্তন হয়? এলোমেলোভাবে একটি কমান্ড লাইন চালানোর পরামর্শ দেওয়া কার্যকর নয়।
কেভিন বোয়েন

1

ন্যানোর জন্য সর্বাধিক সম্পূর্ণ এবং আপ টু ডেট সিনট্যাক্স hilighters এখানে রক্ষণাবেক্ষণ করা হয়

আপনার ব্যবহারকারীর জন্য সমস্ত হাইলাইটার ইনস্টল করতে কেবল চালান:

cd /tmp
git clone https://github.com/tech4david/nano-highlight.git
cd nano-highlight/
make install
echo "include ~/.nano/syntax/ALL.nanorc" >> ~/.nanorc

সমাধানটি ভাল, তবে আমি এর জন্য অন্য একটি ফোল্ডার ব্যবহার করব git clone/tmpফোল্ডার ওটিএফ ফটোগুলি প্রতিটি সিস্টেমের সূচনায় মুছে ফেলা হবে এবং তাই আপনি কখনই এটি চালাতে পারবেন না git pull
এবি

আপনার ভাষার ট্যাগটি ভুল। jsনয় bashবা shell-scriptআমি শব্দ পিছনে লিংক রেখেছি here। সমস্যা কোথায়?
এবি

1
@AB যদি ফোল্ডারের যখন আপনি যেহেতু চলে গেছে এটা কোন ব্যাপার না make installসব সিনট্যাক্স ফাইল নিরাপদ স্থানে যেখানে তারা অন্তর্গত অনুলিপি করা হয়: ~/.nano/syntax
পাবলো এ

1

উপরের নির্দেশাবলী অনুসরণ করার পরে যারা সমস্যায় পড়েছেন তাদেরও নকল সংজ্ঞা আছে কিনা তাও পরীক্ষা করে দেখুন । এগুলি সমস্ত ফাইলের জন্য সমস্ত সিনট্যাক্স হাইলাইটিং অক্ষম করবে । আমি একটি ফাইল যুক্ত করার পরে এটিতে ছুটে এসেছি এবং বুঝতে পারি না যে আমার ইতিমধ্যে একটি অভিন্ন বিভাগ রয়েছে, যেমন:nanorc.nanorc~/.nanorc

## Here is an example for nanorc files.
##
syntax "nanorc" "\.?nanorc$"
## Possible errors and parameters
icolor brightwhite "^[[:space:]]*((un)?set|include|syntax|i?color).*$"
## Keywords
icolor brightgreen "^[[:space:]]*(set|unset)[[:space:]]+(autoindent|backup|$
icolor green "^[[:space:]]*(set|unset|include|syntax)\>"
(...)

0

আমি এখানে js এর জন্য সিনট্যাক্স হাইলাইট পেয়েছি ।

আমি এটিকে আমার ব্যবহারকারীর ফাইলে যুক্ত করেছি ~/.nanorc

তবে আমি যুক্ত করতে পারি এমন কোনও ফাইল পেতে, আমাকে প্রথমে /usr/share/nano/nanorc.nanorcআমার স্থানীয় ফোল্ডারে কপি করতে হয়েছিল ~/.nanorc


0

আমি দুর্ঘটনাক্রমে কীবোর্ড শর্টকাট Alt+ ব্যবহার করে হাইলাইট অক্ষম করেছি Y। একই কীবোর্ড শর্টকাট দিয়ে এটি আবার চালু করা যেতে পারে।


0

আমি জানি এটি একটি পুরানো থ্রেড তবে আমার সমাধানটি সহায়তা করতে পারে

/ etc / nanorc এ ফাইলটি সম্পাদনা করুন

243 লাইন থেকে আপনি অনেকগুলি ফাইল অন্তর্ভুক্ত করতে পারেন। আপনার প্রয়োজনগুলি কেবল সংরক্ষণ করুন এবং সম্পন্ন করেছেন unc

## Nanorc files
include "/usr/share/nano/nanorc.nanorc"

## C/C++
include "/usr/share/nano/c.nanorc"

## Makefiles
include "/usr/share/nano/makefile.nanorc"

## Cascading Style Sheets
include "/usr/share/nano/css.nanorc"

## Debian files
include "/usr/share/nano/debian.nanorc"

## Gentoo files
# include "/usr/share/nano/gentoo.nanorc"

আপনি ন্যানো আপডেট করেন কিনা তা নিশ্চিত না আমি এই পরিবর্তনগুলি অদৃশ্য হয়ে যাবে।


-1

আমি এই স্ক্রিপ্টটি ন্যানোর সাথে রং যুক্ত করতে তৈরি করেছি: তবে অবশ্যই এটির জন্য আপনার / ইউএসআর / শেয়ার / ন্যানোতে রঙিন কোডগুলি থাকতে হবে। যদি ত্রুটিগুলি থাকে: কেবল ম্যানুয়ালি ~ / .nanorc ফাইলটি সম্পাদনা করুন এবং ত্রুটিগুলি দেয় এমন লাইনগুলি সরিয়ে দিন।

#!/bin/bash

for i in `ls /usr/share/nano`
  do
    echo "include /usr/share/nano/$i" >> ~/.nanorc
  done

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