রেঞ্জার ফাইল ম্যানেজারে নতুন কমান্ডগুলি কীভাবে সংজ্ঞায়িত করা যায়?


1

আমি এমন কিছু টাইপ করে রেঞ্জার ফাইল ম্যানেজারে নতুন কমান্ডগুলি সংজ্ঞায়িত করার ক্ষমতা চাই:

:newcmd myarg

এবং এটি দিয়ে নির্বিচারে কোড চালান।

কমান্ড সংজ্ঞায় প্রোগ্রামের স্থিতি যেমন, বর্তমান ডিরেক্টরি এবং নির্বাচিত ফাইলগুলিতে অ্যাক্সেস থাকা উচিত।

এটা করার কোন উপায় আছে?

দাবি অস্বীকার : আমি এই প্রশ্নটি তৈরি করেছি এবং এ বিষয়ে ভাল উত্সের অভাবের কারণে এটি স্ব-জবাব দিয়েছি। অতিরিক্ত উত্তর স্বাগত চেয়ে বেশি।


@ ফিক্সার 1234 প্রতিক্রিয়া জন্য ধন্যবাদ। একটি স্ব-উত্তর দাবি অস্বীকার। তবে এটি যদি খুব বেশি বিস্তৃত হয় তবে এটি বন্ধ করুন, আমি মনে করি না স্ব-উত্তর দিয়ে কোনও পার্থক্য করা উচিত। আমি যা বুঝতে পারি না তা কেন এটি খুব বিস্তৃত, আমি বিশ্বাস করি অতীতে আমি বেশ কয়েকটি তুলনামূলক প্রশ্ন দেখেছি। আমি জিজ্ঞাসা করতে পারতাম: আমি কীভাবে 3 টি বিভিন্ন এক্স এর জন্য এক্স করতে নতুন কমান্ড তৈরি করব। তবে আমি বুনিয়াদি অনুভব করেছি যে মূলত কোনও কমান্ড লেখার অনুমতি দেয় যা উত্তরে ছিল rable যদি এটি বন্ধ হয় আমি এটি করব।
সিওরো সান্তিলি :01 改造 中心 996ICU 六四 事件

@ ফিক্সার 1234 সম্ভবত এটি বিদ্যমান উত্তরগুলির পরিমাণের সাথেও করতে পারে: আমি ধারণা করি এক্সেল সম্পর্কে ইতিমধ্যে প্রচুর তথ্য রয়েছে, সুতরাং লেজারের মতো সুনির্দিষ্ট যে কোনও কিছুই সম্ভবত অকেজো। তবে রেঞ্জার এখনও সেখানে নেই :-)
সিরো সান্তিলি 新疆 改造 中心 996ICU 事件 事件

আমরা প্রচুর এক্সেল প্রশ্ন পেয়েছি যেখানে ওপি একটি প্রয়োজনীয়তা দেয় এবং লোকদের তাদের সমাধান দেওয়ার জন্য বলে। যারা "খুব বিস্তৃত" চিকিত্সা পান। এখানে, আপনি নিজের সমাধান সরবরাহ করেছেন এবং অস্বীকৃতি এটি পরিষ্কার করে দিয়েছে, তাই আমি মনে করি না যে আপনার কোনও সমস্যা হয়েছে। আমি অনুমান করছি যে যে কেউ এটিকে পর্যালোচনা সারিতে পতাকাঙ্কিত করে সে তার প্রতিক্রিয়া জানিয়েছিল।
ফিক্সার 1234 8

উত্তর:


1

এর ~/.config/ranger/commands.pyমতো কিছু ধারণ করতে সম্পাদনা করুন :

from ranger.api.commands import *

class newcmd(Command):
    def execute(self):
        if not self.arg(1):
            self.fm.notify('Wrong number of arguments', bad=True)
            return
        # First argument. 0 is the command name.
        self.fm.notify(self.arg(1))
        # Current directory to status line.
        self.fm.notify(self.fm.thisdir)
        # Run a shell command.
        self.fm.run(['touch', 'newfile')

এখন আপনি টাইপ করতে পারেন:

:newcmd myarg

সংজ্ঞায়িত কমান্ড চালাতে।

আরও বিকল্পগুলি এখানে পাওয়া যাবে: https://github.com/hut/ranger/blob/9c585e48e14525f11d2405ea0bb9b5eba92e63e9/ranger/config/commands.py

তারপরে আপনি আরও একধাপ এগিয়ে যেতে পারেন এবং এর জন্য একটি মানচিত্র সংজ্ঞায়িত করতে পারেন, যেমন: যুক্ত করুন ~/.config/ranger/rc.conf:

map ,n console newcmd
map ,m newcmd default-arg 

এবং এখন আপনি কেবল টাইপ করতে পারেন:

  • ,nnewcmdস্থিতি রেখায় লিখতে , এবং ব্যবহারকারীকে প্রথম যুক্তি ইনপুট করতে প্রস্তুত হন
  • ,m এবং অবিলম্বে একটি ডিফল্ট যুক্তি দিয়ে কমান্ডটি চালান

1.6.1 রেঞ্জারে পরীক্ষিত।

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