Linux

Cod: Bash ve Zsh için Yeni Komut Satırı Otomatik Tamamlama Daemon –help Kullanımı


Cod komut satırı tamamlama arka plan programı

Morina Go for Bash ve Zsh ile yazılmış yeni bir komut satırı tamamlama programıdır. Araç, --help desteklemeyen komutlar için otomatik tamamlama oluşturmak üzere komutlar.

Komut satırı tamamlama (sekme tamamlama / otomatik tamamlama), genellikle Sekme olan tamamlama tuşuna basıldığında programın otomatik olarak kısmen yazılan komutları doldurduğu komut satırı yorumlayıcıları arasında yaygın bir özelliktir. Bunu kullanarak, ortak komutlara erişmek için daha az tuş vuruşu gerekir ve komutları / dosya adlarını uzun veya zor yazılmış adlarla otomatik olarak tamamlamayı kolaylaştırır.

Tamamlanabilecek öğeler sadece komutlar ve dosya adları değil, aynı zamanda komut argümanlarıdır ve Cod'un yaptığı da budur. Çıktısını ayrıştırır --help belirli bir komut için ve Bash veya Zsh kabukları için otomatik tamamlama ürettiğine dayanarak. Bazı komutlar zaten bağımsız değişkenler için otomatik tamamlamayı destekliyor (örneğin, ls – tip ls --fu ve bas Tab otomatik tamamlama ls --full-time), ancak bazıları bu durumlarda yardımcı olmaz ve Cod yardımcı olabilir.

Cod, macOS ve Linux'ta Zsh'ı ve yalnızca Linux'ta Bash'i destekler. Cod proje açıklamasına göre macOS ile birlikte gelen Bash sürümü çok eski olduğundan ve Cod bunu desteklemediğinden macOS'ta Bash desteklenmez. Proje açıklamasında Windows'tan bahsedilmiyor ve Windows ikili dosyaları yok, bu yüzden Windows'u desteklemeyebilir, ancak Windows'u kullanmadığımdan emin değilim.

Cod nasıl çalışır?

Cod'un scrcpy komutuna nasıl otomatik tamamlama eklediğini gösteren demo
Cod'un scrcpy komutuna nasıl otomatik tamamlama eklediğini (varsayılan olarak otomatik tamamlama içermeyen) gösteren demo terminal kaydı

Eriştiğinizde --help Cod, bir program / komutun olduğunu algılar ve bu komutu öğrenmesi gerekip gerekmediğini sorar. İzin verirseniz, Cod --help çıktısını alır ve ileride bu komutla ilgili bağımsız değişkenleri tamamlamak için kullanır.

Cod'un bir komutun yardımını çağırdığınızı algılamadığı özel durumlar için, Cod'u kullanın learn Yine de öğrenmek için subcommand.

Gerçek bir dünya örneğine bakalım: scrcpy (bu, yukarıdaki birkaç satırı kaydeden demo terminalinde görülebilir). Bu, bir Android cihazının ekranını masaüstünde göstermek ve uzaktan kontrol etmek için bir araçtır. Scrcpy komutunun birçok seçeneği / bağımsız değişkeni vardır. --always-on-top, --record-format, --window-borderlessve daha fazlası, bunlar için yerleşik otomatik tamamlama desteği olmadan.

Cod'un scrcpy komut seçeneklerini / bağımsız değişkenlerini öğrenmesini sağlamak için şunu çalıştıralım:

scrcpy --help

İle bir komut çalıştırırken --help argüman olarak, Cod bu komutu öğrenmesi gerekip gerekmediğini sorar:

┌──> /usr/bin/scrcpy --help
└─── cod: learn this command? (yn?) > y
cod: learned completions: "--always-on-top" "-b" and 35 more

tip y bu komutu öğrenmesine izin vermek için.

Cod, komut argümanlarını öğrendiğine göre, şimdi bir deneyelim. tip

scrcpy --a

bir terminalde ve basın Tab. Argümanın otomatik olarak tamamlanması gerekir --always-on-top.

Zaten bahsedilen yanı sıra learn subcommand, Cod gibi başka seçenekler de var update (bilinen bir komutu güncelleyin), list (bilinen komutları listele) ve daha fazlası. Bu Cod yardım / kullanım ekranıdır:

usage: cod ()  ( ...)

Shell autocomplete generator based on `--help' texts.

Flags:
  --help     Show context-sensitive help (also try --help-long and --help-man).
  --version  Show application version.

Commands:
  help (...)
  learn ...
  list (...)
  remove ...
  update ...
  init 
  example-config ()
  daemon ()

Ziyaret edin Morina proje sayfası nasıl kullanılacağı ve yapılandırılacağı hakkında daha fazla bilgi için.

Kod İndir

Kaynağı indirebilir ve Cod'u oluşturabilir veya önceden oluşturulmuş ikili dosyayı indirip yükleyebilirsiniz (hem macOS hem de Linux için kullanılabilir).

Cod ikili kodunu Linux'a kurmak için, cod-Linux.tgz arşivini açın, Cod ikili dosyasını çıkardığınız klasörde bir terminal açın ve bu komutu kullanarak /usr/local/bin (bunun PATHveya başka bir yere kurun):

sudo install cod /usr/local/bin

Ayrıca cihazınıza bir satır eklemeniz gerekir. ~/.bashrc veya ~/.zshrc Dosyadan Kaynak Koduna:

  • Bash için: açık ~/.bashrc bir metin düzenleyicisiyle ve dosyanın sonuna şunları içeren yeni bir satır ekleyin:

source <(cod init $$ bash)

  • Zsh için: açık ~/.zshrc bir metin düzenleyicisiyle ve dosyanın sonuna aşağıdakilerle yeni bir satır ekleyin:
source <(cod init $$ zsh)

Dosyayı kaydedin, değiştirilen kaynağı ~/.bashrc (bu komutu kullanın: source ~/.bashrc) ve ~/.zshrc (Kullanım source ~/.zshrc) dosya veya yeni bir terminal açın ve Cod kullanıma hazır olacaktır.

Daha Fazla Göster
Kapalı