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 ~/.nanorc
bu 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 fault
düzenledikten sonra bir süre alabilirsiniz ~/.nanorc
. Böyle bir hata oluşursa, LANG ortam değişkenini ayarlamak yardımcı olur. unset LANG
Terminalde 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 ~/.nanorc
mu? Nasıl devre dışı bırakabilirim .nanorc
?
~/.nanorc
dosya bile yok .
include
yapmasam 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 \//' >> ~/.nanorc
hepsini .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.nanorc
Tü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ı include
etkinleştirmek için, ~/.nanorc
dosyanı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
find
Belirtilen dizin içindeki dosyaların veya dizinlerin için komut arar.
-iname
Bayrak sadece biten bir isimle dosyalara bakmak için söyler .nanorc
.-exec
Bayrakları 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 ~/.nanorc
dosyanı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
. /tmp
Klasörün içeriği , her sistem başlangıcında silinecek ve bu nedenle hiçbir zaman çalışamazsınız git pull
.
js
değil bash
veya shell-script
ve ben kelimenin arkasındaki bağlantıyı yerleştirdim here
. Sorun nerede?
make install
tü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.nanorc
yerel 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