Nano, gedit ve vim gibi vurgulamayı yapabilir mi? Bunu nasıl etkinleştirebilirim? En azından bash ve python sözdizimi özelliklerine ihtiyacım var.
Nano, gedit ve vim gibi vurgulamayı yapabilir mi? Bunu nasıl etkinleştirebilirim? En azından bash ve python sözdizimi özelliklerine ihtiyacım var.
Yanıtlar:
Nano editör, birkaç dil ve komut dosyası için söz diziminin vurgulanmasını sağlar. Ödeme/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
Bunları, kullanıcının ~/.nanorcbu satırda benzer bir şeyle mevcut nano yapılandırma dosyasına bağlayın:
nits@nits-excalibur:~$ cat ~/.nanorc
include /usr/share/nano/sh.nanorc
Artık nano'da bağladığınız herhangi bir dosya için sözdizimi vurgulaması etkindir (Ayrıca birden çok dosyayı da bağlayabilirsiniz)

Not: Bazen dosyanızı segmentation faultdüzenledikten sonra bir süre alabilirsiniz ~/.nanorc. Böyle bir hata oluşursa, LANG ortam değişkenini ayarlamak yardımcı olur. unset LANGTerminalde onu ayarlayabilirsin . ( Buradan elde edilen çözüm )
Bash vurgulamasından memnun kalmazsanız başka çözümler de vardır. Bunun bir örneği burada bulunabilir
Eğer include /usr/share/nano/*nano versiyonunuz destekliyorsa, tüm dillerin vurgulanmasını sağlamak için ~ / .nanorc dosyasına da yazabilirsiniz .
/etc/nanorc- genel ayarların üzerine yazılıyor ~/.nanorcmu? Nasıl devre dışı bırakabilirim .nanorc?
~/.nanorcdosya bile yok .
includeyapmasam bile sözdizimi olaylarını mümkün kılmayan tüm satırlarla küresel ayar nasıl .nanorc?
ls -1 /usr/share/nano/*.nanorc | sed 's/^\//include \//' >> ~/.nanorchepsini .nanorc dosyasına ekleyin veya yoksa onu oluşturun.
include /usr/share/nano/*çalışmıyor
Evet, ancak varsayılan sözdizimi tanımları oldukça zayıf ve eksik olabilir. Burada daha doğru bir tanım kümesi tutuyorum, onları yararlı bulan herkes için.
Yüklemek için çalıştırın:
git clone https://github.com/nanorc/nanorc.git
cd nanorc
make install
Bu satırları ~ / .nanorc dizinine ekleyin.
include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/ALL.nanorc
Renklendirmek istediklerinizi belirtin; bu renkleri tercihlerinize göre ayarlamak zorunda kalacaksınız. ALL.nanorcTüm henüz sınıflandırılmamış dosyalar için özellikler açıklanmaktadır. Bunlar, cilalanmış ürün değil, başlamanız gereken araçlardır.
Mevcut tüm dilleri hızlı bir şekilde etkinleştirmek için bu komutu kullandım.
find /usr/share/nano/ -iname "*.nanorc" -exec echo include {} \; >> ~/.nanorc
Diğer cevaplarda da belirtildiği gibi, /usr/share/nano/farklı dillerin tanımlarını içerir.
$ 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
Ayrıca bir dilin vurgulanmasını includeetkinleştirmek için, ~/.nanorcdosyanızı ve etkinleştirmek istediğiniz dil tanımının yolunu da eklersiniz . Örneğin, C / C ++ 'ı etkinleştirmek için bu satırı ekleyeceksiniz.
include /usr/share/nano/c.nanorc
findBelirtilen dizin içindeki dosyaların veya dizinlerin için komut arar.
-inameBayrak sadece biten bir isimle dosyalara bakmak için söyler .nanorc.-execBayrakları bulunan her dosya üzerinde yürütülecek bir komut tanımlar.{}Dosya adıyla yerini alır.\;Komuta yürütmek için komutun sonunu belirtmek için kullanılır find.>> ~/.nanorcçıktının ~/.nanorcdosyanıza eklenmesine neden olur .Bu, varsayılan olarak dahil edilen tüm sözdizimi vurgulama eklentilerini ve / usr / share / nano'ya eklediklerinizi içermelidir:
find /usr/share/nano -name '*.nanorc' -printf "include %p\n" > ~/.nanorc
Veya, / etc / nanorc dosyasını düzenleyin ve içeriğinde yer alan bilgileri rahatsız edip edemediğinizi görün.
Bu, .nanorc dosyasındaki joker karakterleri kabul etmeyi reddeden bir nano sürümüne sahipseniz çalışır.
Her yeni bir ek .nanorc color config eklediğinizde bu satırı çalıştırın.
Benim github de vurgulayan bazı nano sözdizimi var .
Html ve php için canlı örnek ekran görüntüleri var:

ve

Bunu tümünü dahil etmek için kullanabilirsiniz: (bunu ~ / nanorc dosyasına ekleyin)
include "/usr/share/nano/*.nanorc"
Mutlu kodlama!
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
Nano için en eksiksiz ve en güncel sözdizimi yükselticileri burada tutulmaktadır .
Kullanıcınıza yönelik tüm vurgulayıcıları yüklemek için aşağıdakileri çalıştırın:
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. /tmpKlasörün içeriği , her sistem başlangıcında silinecek ve bu nedenle hiçbir zaman çalışamazsınız git pull.
jsdeğil bashveya shell-scriptve ben kelimenin arkasındaki bağlantıyı yerleştirdim here. Sorun nerede?
make installtüm sözdizimi dosyalarının ait oldukları güvenli bir yere kopyalandığından beri bu klasörün kaybolup gitmediği önemli değildir ~/.nano/syntax.
Yukarıdaki talimatları uyguladıktan sonra sorun yaşayanlar için, aynı tanımların olup olmadığını kontrol edin . Bunlar, tüm dosyalar için tüm sözdizimi vurgulamasını devre dışı bırakacaktır . Bir dosya ekledikten sonra buna rastladım ve zaten aynı bir bölüme sahip olduğumu anlamadım , yani: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)\>"
(...)
Burada js için vurgulama sözdizimi bulundu .
Adresindeki kullanıcı dosyama ekledim ~/.nanorc
Ancak ekleyebileceğim bir dosyayı almak için ilk önce /usr/share/nano/nanorc.nanorcyerel klasörüme kopyalamak zorunda kaldım ~/.nanorc.
Yanlışlıkla Alt+ klavye kısayolunu kullanarak vurgulamayı devre dışı bıraktım Y. Aynı klavye kısayolu ile tekrar açılabilir.
Biliyorum eski bir konu ama çözümüm yardımcı olabilir
/ etc / nanorc konumundaki dosyayı düzenle
243 satırından lot içerdiği dosyaları bulabilirsiniz. İhtiyacınız olanları kaydedin, kaydedin ve bitirin.
## 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"
Nano'yu güncelleyip güncellemediğinizden emin değilim, bu değişiklikler yok olacak.
Bu senaryoyu nano'ya renk eklemek için yaptım: Ama elbette bunun çalışması için / usr / share / nano içindeki renk kodlarına sahip olmalısınız. Hata varsa: sadece ~ / .nanorc dosyasını el ile düzenleyin ve hataları veren satırları kaldırın.
#!/bin/bash
for i in `ls /usr/share/nano`
do
echo "include /usr/share/nano/$i" >> ~/.nanorc
done