পাইথন ব্লক গতির সমাপ্তি


13

আমার একটি গতি প্রয়োজন যা অজগর ব্লকের শেষ / প্রারম্ভের দিকে এগিয়ে যায় এবং আমার আরও একটি গতি প্রয়োজন যা পূর্ববর্তী / পরবর্তী পদ্ধতি / শ্রেণীর (সমস্ত সংমিশ্রণ) শুরু / শেষের দিকে চলে।

আমি ভিম-ইনডেন্ট-অবজেক্ট, পাইথন-মোড, চাঁপা, ভিম-পাইথন-অবজেক্ট ইত্যাদি চেষ্টা করেছি them এগুলির কোনওটিই ব্লকের শেষ সমর্থন করে না এবং তাদের কেউই উপরের গতিগুলির সমস্ত সংমিশ্রণকে সমর্থন করে না।

আমার মনে আছে একদা আমি যে প্রদত্ত একটি প্লাগইন ছিল ]], [[, ][এবং []begining পূর্ববর্তী / পরবর্তী পদ্ধতি / ক্লাসের / শেষ জন্য গতি, কিন্তু আমি এটা আমার প্লাগ ডিরেক্টরির মধ্যে খুঁজে পাচ্ছি না (অনুসন্ধান "] [" ও "[]" আমার প্লাগ করা ডিরেক্টরিতে এবং সমস্ত উপস্থিতি বিশ্লেষণ করে তবে "] [" বা "[]]" সংজ্ঞায়িত করে এমন কোনও কিছুই খুঁজে পেল না।

আপনি যে প্লাগিনটি ব্যবহার করতেন তা কি জানেন? আপনি কি এমন কোনও প্লাগইন জানেন যা এই কার্যকারিতাটি সরবরাহ করে?



3
[[এবং ]], ডিফল্ট পাইথন ftplugin দ্বারা সরবরাহ করা হয়।
রোমেনেল

1
তথ্যের জন্য @romainl ধন্যবাদ, আমি জানি সম্পর্কে [[, ]], (, ), {এবং }[[এবং ]]কিছু ক্ষেত্রে দরকারী তবে আমার মূল সমস্যাটি আমার দরকার []এবং ][বা এর মতো কিছু যা পরবর্তী / পূর্ববর্তী পদ্ধতি / শ্রেণীর শেষের জন্য জাম্প সরবরাহ করে।
সাসান

1
@ মুরু ধন্যবাদ, এটি ]eআমার বেশিরভাগ সমস্যার সমাধান করে, তবে এই প্লাগইনটিতে কিছু ম্যাপিংয়ের মতো ভাঙা মনে হচ্ছে ]vবা ]>আমি তাদের একটি কাঁটাচামচ স্থির করে এটি প্রকাশ করার চেষ্টা করব। যদিও আমি এখনও অবাক হয়েছি যে প্লাগিনটি কী সরবরাহ করেছিল ][এবং []এটি সত্যই কার্যকর ছিল।
সাসান

উত্তর:


11

$VIMRUNTIME/ftplugin/python.vimনিম্নলিখিত এফটি-নির্দিষ্ট গতিগুলির সাম্প্রতিক আপডেটের (নভেম্বর 2017) সহ অজগর ভাষার জন্য এখন উপলব্ধ

  • [[ বর্তমান / পূর্ববর্তী শীর্ষ স্তরের শুরুতে পিছনে ঝাঁপুন
  • [] পূর্বের শীর্ষ স্তরের শেষ দিকে পিছনে ঝাঁপুন
  • ][ বর্তমান শীর্ষ স্তরের শেষ দিকে এগিয়ে যান
  • ]] পরবর্তী শীর্ষ স্তরের শুরুতে এগিয়ে যান
  • [m বর্তমান / পূর্ববর্তী পদ্ধতি / স্কোপটি শুরু করতে পিছনে ঝাঁপুন
  • [M পূর্ববর্তী পদ্ধতি / সুযোগের শেষে পিছনে ঝাঁপুন
  • ]M বর্তমান / পরবর্তী পদ্ধতি / সুযোগের শেষে এগিয়ে যান
  • ]m পরবর্তী পদ্ধতি / সুযোগ শুরু করতে এগিয়ে যান

অজগর ফাইল উদাহরণ

class previous:             # [[[[

    def method_first:
        pass
    # ...

    def method_last:
        pass                # []

class current:              # [[ or [m...[m[m

    def method_first:       # [[]m or [m...[m
        pass                # [[]M or [M...[M
    # ...

    def method_previous:    # [m[m
        pass                # [M

    def method_current:     # [m
        # CURSOR <---------------------------
        pass                # ]M

    def method_next:        # ]m
        pass                # ]M]M
    # ...

    def method_last:        # ][[m or ]m...]m
        pass                # ][   or ]M...]M

class previous:             # ]]   or ]m...]m]m

    def method_first:
        pass
    # ...

def global_func:            # ]]]]
    pass

আপনার ভিএম প্যাচ স্তর কমপক্ষে থাকলে এই আপডেটটি অন্তর্ভুক্ত করা উচিত 8.0.1256

আপনি যদি আপডেট করতে না পারেন তবে এই কার্যকারিতাটি ব্যবহার করতে চান তবে আপনি ~/.vimডিরেক্টরিটিতে সর্বশেষতম সংস্করণ ইনস্টল করতে পারেন :

$ curl https://raw.githubusercontent.com/vim/vim/master/runtime/ftplugin/python.vim --create-dirs -o ~/.vim/ftplugin/python.vim

পাইগনসেস প্লাগইন

এই প্লাগইনটি অনুরূপ গতি সরবরাহ করে তবে কিছুটা সংশোধিত:

স্টক Vim 8.0 "শ্রেণি" গতি (" ]]", " [[", ইত্যাদি), প্রথম কলামে শুরু হওয়া ব্লকগুলি সন্ধান করে, এটি ক্লাস বা ফাংশন ব্লক কিনা তা বিবেচনা না করেই, যদিও এর পদ্ধতি / ফাংশন গতি (" [m", " ]m" ইত্যাদি) কোনও ক্লান্ত বা ফাংশন ব্লক কিনা তা নির্বিশেষে যে কোনও ইনডেন্টে সমস্ত ব্লক সন্ধান করুন। বিপরীতে, "পাইথনসেন্স" শ্রেণীর গতিগুলি তাদের ইনডেন্ট স্তর নির্বিশেষে সমস্ত এবং একমাত্র শ্রেণীর সংজ্ঞাগুলি সন্ধানের জন্য কাজ করে, যখন এর পদ্ধতি / ফাংশনটির গতিগুলি তাদের ইনডেন্ট স্তর নির্বিশেষে সমস্ত এবং শুধুমাত্র পদ্ধতি / ফাংশন সংজ্ঞা সন্ধানে কাজ করে।

সমস্ত বিবরণ এবং উদাহরণ https://github.com/jeetsukumaran/vim-pythonsense#stock-vim-vs-pythonsense- মোশনসে দেওয়া আছে ।


নিওভিম এই প্যাচটি না নিয়ে আসা পর্যন্ত আমার অপেক্ষা করা উচিত।
সাসান

1
আমি অনুমান করি আপাতত আপনি এটি ম্যানুয়ালি ইনস্টল করতে পারেন curl https://raw.githubusercontent.com/vim/vim/master/runtime/ftplugin/python.vim --create-dirs -o ~/.config/nvim/ftplugin/python.vim
হটস্কে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.