कमांड लाइन पूरा होना

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.
समस्या की शिकायत करें स्रोत देखें

आप Bash और Zsh में कमांड-लाइन पूरी करने की सुविधा (जिसे टैब पूरा करना भी कहा जाता है) भी चालू कर सकते हैं. इसकी मदद से, आप कमांड के लिए इस्तेमाल किए गए नामों को पूरा कर सकते हैं. साथ ही, नामों और फ़्लैग की वैल्यू के साथ-साथ टारगेट नामों को भी फ़्लैग कर सकते हैं.

बैश

बैज़ेल के साथ Bash पूरा करने वाली स्क्रिप्ट भी उपलब्ध है.

अगर आपने Bazel इंस्टॉल किया है, तो:

  • एपीटी डेटा स्टोर करने की जगह से, आपका काम हो गया -- बैश पूरा करने की स्क्रिप्ट, /etc/bash_completion.d में पहले से इंस्टॉल है.

  • Homebrew से आपका काम पूरा हो गया है -- $(brew --prefix)/etc/bash_completion.d में Bash पूरी करने वाली स्क्रिप्ट पहले से इंस्टॉल है.

  • GitHub से डाउनलोड किए गए इंस्टॉलर से, इसके बाद:

    1. पूरा होने वाली फ़ाइल का पूरा पाथ ढूंढें. इंस्टॉलर ने इसे binडायरेक्ट्री में कॉपी कर लिया है.

      उदाहरण: अगर आपने --user के साथ इंस्टॉलर चलाया है, तो यह $HOME/.bazel/bin होगा. अगर आपने इंस्टॉलर को रूट की तरह चलाया है, तो यह /usr/local/lib/bazel/bin होगा.

    2. इनमें से कोई एक काम करें:

      • या तो इस फ़ाइल को अपनी पूरी डायरेक्ट्री में कॉपी करें (अगर आपके पास कोई है).

        उदाहरण: Ubuntu पर यह /etc/bash_completion.d डायरेक्ट्री है.

      • इसके अलावा, Bash की आरसी फ़ाइल से पूरी फ़ाइल बनाएं.

        अपने ~/.bashrc (Ubuntu पर) या ~/.bash_profile (macOS पर) के लिए, नीचे दी गई लाइन से मिलती-जुलती लाइन जोड़ें:

        source /path/to/bazel-complete.bash
        
  • बूटस्ट्रैपिंग के ज़रिए, फिर:

    1. पूरा करने की स्क्रिप्ट बनाएं:

      bazel build //scripts:bazel-complete.bash
      
    2. पूरी होने वाली फ़ाइल bazel-bin/scripts/bazel-complete.bash में बनाई गई है.

      इनमें से कोई एक काम करें:

      • अगर आपके पास कोई फ़ाइल है, तो उसे अपनी पूरी डायरेक्ट्री में कॉपी करें.

        उदाहरण: Ubuntu पर यह /etc/bash_completion.d डायरेक्ट्री है

      • इसे अपनी स्थानीय डिस्क पर कहीं भी कॉपी करें, जैसे कि $HOME में और Bash की आरसी फ़ाइल से पूरी फ़ाइल स्रोत पर ले जाएं.

        अपने ~/.bashrc (Ubuntu पर) या ~/.bash_profile (macOS पर) के लिए, नीचे दी गई लाइन से मिलती-जुलती लाइन जोड़ें:

        source /path/to/bazel-complete.bash
        

ज़ेड

बेज़ल के साथ Zsh में पूरी होने वाली एक स्क्रिप्ट है.

अगर आपने Bazel इंस्टॉल किया है, तो:

  • APT डेटा स्टोर करने की जगह से आपका काम पूरा हो जाएगा -- /usr/share/zsh/vendor-completions में Zsh पूरा होने वाली स्क्रिप्ट पहले से इंस्टॉल है.

    अगर आपके पास पूरी तरह से कस्टमाइज़ किया गया .zshrc है और अपने-आप पूरा होने की सुविधा काम नहीं करती है, तो इनमें से कोई एक तरीका आज़माएं:

    अपने .zshrc में यह जोड़ें:

        zstyle :compinstall filename '/home/tradical/.zshrc'
    
        autoload -Uz compinit
        compinit
    

    या

    निर्देशों का पालन करें यहां

    अगर आप oh-my-zsh का इस्तेमाल कर रहे हैं, तो हो सकता है कि आप zsh-autocomplete प्लग इन इंस्टॉल और चालू करना चाहें. अगर आपको ऊपर बताए गए तरीकों का इस्तेमाल नहीं करना है, तो इनमें से किसी एक तरीके का इस्तेमाल करें.

  • Homebrew से आपने इसे पूरा कर लिया है -- $(brew --prefix)/share/zsh/site-functions में Zsh पूरा होने की स्क्रिप्ट पहले से इंस्टॉल है.

  • GitHub से डाउनलोड किए गए इंस्टॉलर से, इसके बाद:

    1. पूरा होने वाली फ़ाइल का पूरा पाथ ढूंढें. इंस्टॉलर ने इसे binडायरेक्ट्री में कॉपी कर लिया है.

      उदाहरण: अगर आपने --user के साथ इंस्टॉलर चलाया है, तो यह $HOME/.bazel/bin होगा. अगर आपने इंस्टॉलर को रूट की तरह चलाया है, तो यह /usr/local/lib/bazel/bin होगा.

    2. इस स्क्रिप्ट को अपने $fpath पर निर्देशिका में जोड़ें:

      fpath[1,0]=~/.zsh/completion/
      mkdir -p ~/.zsh/completion/
      cp /path/from/above/step/_bazel ~/.zsh/completion
      

      हो सकता है कि यह सुविधा काम करने के लिए, आपको rm -f ~/.zcompdump; compinit को पहली बार कॉल करना पड़े.

    3. वैकल्पिक रूप से, अपनी .zshrc में इन्हें जोड़ें.

      # This way the completion script does not have to parse Bazel's options
      # repeatedly.  The directory in cache-path must be created manually.
      zstyle ':completion:*' use-cache on
      zstyle ':completion:*' cache-path ~/.zsh/cache