কীভাবে ইনপুট / টেক্সারিয়া ফোকাসকে হটকিগুলির শর্ত হিসাবে ব্যবহার করবেন


3

আমি অটোহটকি এমনভাবে সেট আপ করেছি যা ক্রোমে Cmd+ Leftএবং Cmd+ Rightকীস্ট্রোককে Back/ Forwardনেভিগেশন হিসাবে স্বীকৃত ।

সমস্যাটি হ'ল আমি পাঠ্য বাক্সগুলিতে পাঠ্য প্রবেশের সময় এই কীগুলি টিপে দেওয়া হচ্ছে তাও স্বীকৃতি দেয়। যাইহোক পাঠ্য প্রবেশের সময়, আমি এই কীগুলি সমন্বয়গুলি বিভিন্ন ফাংশন সম্পাদন করতে চাই - লাইনের শুরু / শেষের দিকে লাফিয়ে, Ctrl+ Left/ এর মতো Right

পাঠ্য বাক্সগুলির জন্য একটি ম্যাপিং এবং অটোহটকিতে অন্য সমস্ত কিছুর জন্য অন্য ম্যাপিংয়ের কী উপায় আছে?


এটি জটিল হতে চলেছে কারণ এএইচকে ওয়েব সামগ্রীর মধ্যে স্বতন্ত্র উপাদানগুলি সনাক্ত করতে পারে না, তবে বেশি কাজ না করে এই কাজটি করার জন্য আমার কিছু কৌশল অবলম্বন করে। ;)
iglvzx

আপনার কৌশলগুলি কি, @iglvzx?
আর্ট

উত্তর:


8

গভীরতম AutoHotkey (Ahk) গুগল Chrome এর মধ্যে সনাক্ত করা সম্ভব, ওয়েব কন্টেন্ট এর সাথে সম্পর্কিত হয় Chrome_RenderWidgetHostHWND1নিয়ন্ত্রণ। এই নিয়ন্ত্রণটি ওয়েব সামগ্রীর জন্য ভিউপোর্ট । আমাদের inputএবং textareaএইচটিএমএল উপাদানগুলি রেন্ডার করা সামগ্রীর ডোমের অভ্যন্তরে কিছুটা গভীর ।

সুতরাং, এইচটিএমএল উপাদান এবং অটোহটকি-র মধ্যে এই প্রাচীরটির মাধ্যমে আমাদের যোগাযোগের একটি উপায় খুঁজে বের করতে হবে। ভাগ্যক্রমে, এইচটিএমএলের একই পাশের একজন প্লেয়ার আছেন যারা এএইচকে এর লিঙ্গো বলতে পারেন: জাভাস্ক্রিপ্ট !

তা কেমন করে? এটিকে সহজভাবে বলতে গেলে জাভাস্ক্রিপ্ট কোনও ক্রিয়াকলাপ সম্পাদন করতে পারে যখন কোনও উপাদান ফোকাস হারায় বা হারায়। এর মধ্যে একটি ক্রিয়া পৃষ্ঠা শিরোনাম পরিবর্তন করা যেতে পারে। এর ফলে গুগল ক্রোমের উইন্ডো শিরোনাম পরিবর্তন হয় এবং এএইচকে উইন্ডো শিরোনাম পড়তে পারে!


সেটআপ:

  1. আমার ইনপুটফোকাস শিরোনাম.ইউজার.জেএস ব্যবহারকারী স্ক্রিপ্ট ইনস্টল করুন । ( উত্স )

  2. এখন আপনি অটোহটকিতে নিম্নলিখিত সিনট্যাক্স ব্যবহার করতে পারেন:

    SetTitleMatchMode, RegEx
    
    #x:: ; normal hotkey
         ; do something
        return
    
    #IfWinActive, \[AHK\] - Google Chrome$
        #x:: ; input/textarea focus hotkey
             ; do something
            return
    
    #IfWinActive
    

প্রদর্শন:

যখন কোনও এইচটিএমএল inputবা textareaউপাদানটির ফোকাস থাকে, তখন ব্যবহারকারী স্ক্রিপ্টটি [AHK]গুগল ক্রোমের উইন্ডো শিরোনাম পরিবর্তন করে পৃষ্ঠার শিরোনামে যুক্ত হয়।

উইন্ডো শিরোনাম গুগল ক্রম

উইন্ডোটির শিরোনামটি শেষ হয় "[AHK] - Google Chrome"বা না হলে এএইচকে এই বৈশিষ্ট্যটি ব্যবহার করতে পারে , কমান্ডের একটি সেট দিয়ে অপ্রত্যক্ষভাবে এইচটিএমএল input/ textareaফোকাস সংযুক্ত করতে ।


নোট:

আমার পরীক্ষা থেকে, দুটি সমস্যা আছে:

  1. পৃষ্ঠাটি লোড হওয়ার পরে input/ textareaযদি ইতিমধ্যে মনোনিবেশ [AHK]করা থাকে তবে পৃষ্ঠার শিরোনামে যুক্ত করা যাবে না। আপনাকে শিরোনামটি পরিবর্তনের জন্য উপাদান থেকে দূরে এবং তারপরে ফিরে যেতে হবে।

  2. যদি পৃষ্ঠা উপাদান লোড হয়ে যাওয়ার পরে input/ textareaউপাদানটি গতিশীলভাবে উত্পন্ন হয় (এটি স্ক্রিপ্টটি লোড করার পরেও হয়), তবে সেই উপাদানগুলির কোনও প্রভাব থাকবে না।

আমি এই সমাধানে কাজ চালিয়ে যাব। এই জাভাস্ক্রিপ্ট সমস্যাগুলি মোকাবিলার জন্য যদি আপনার কাছে কোনও পরামর্শ বা উপায় সম্পর্কে অবগত থাকে তবে দয়া করে আমাকে জানান এবং / অথবা অবদান রাখতে দ্বিধা বোধ করবেন। উত্স উপরোক্ত পোস্ট এবং গিতুব হোস্ট করা হয়।


বাহ এটা খুব বিস্তারিত! আমি তাড়াতাড়ি একটি শট দেব! ধন্যবাদ!
আর্ট

সুতরাং আমি কীভাবে নিম্নলিখিতগুলি সন্নিবেশ করানোর জন্য এটি ব্যবহার করতে যাব: `#IfWinActive, ahk_class Chrome_WidgetWin_1 ব্যাকস্পেস :: প্রেরণ করুন, {বাম} {মুছুন}` ... যখন Chrome এ থাকবেন তবে textarea/ / এ নেই input?
DiMono
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.