"স্পেসে" বানানটি কী স্বয়ংক্রিয়ভাবে সংশোধন করা সম্ভব?


10

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

আমি ইচ্ছা করি এমন কোনও উপায় ছিল যাতে আমি যখন কোনও শব্দের ভুল টাইপ করি, তখন ফ্লাইস্পেল এটিকে "খুব সম্ভবত" সংশোধন করে স্ব-সংশোধন করতে পারে। আমি যখন কোনও শব্দের ভুল টাইপ করি এবং তারপরে এটি সংশোধন করতে অপশন-ট্যাবকে আঘাত করি, তখন ফ্লাইস্পেল সর্বদা সর্বদা মূল পরামর্শ হিসাবে ডিফল্টরূপে সঠিক সংশোধন করে।

তবে, আমি চাই যে ফ্লাইস্পেলটি আমি ভুল টাইপ করে প্রতিটি শব্দ দিয়ে এটি করতে পারি, আমার অপশন-ট্যাবকে আঘাত করার পরেও। কেবল স্পেস বারে আঘাত করা এবং পরবর্তী শব্দটির দিকে এগিয়ে যাওয়া।

এটা কি সম্ভব?

সুতরাং মূলত মোবাইল ফোনে অটো-সঠিকের মতো কিছু। এ জাতীয় বৈশিষ্ট্যটি পছন্দ মতো jabberএবং captureইন মোডে রাখার জন্য দরকারীorg-mode


সম্পাদনা করুন :

আমি বরং এই বৈশিষ্ট্যটি ডিফল্ট ফ্লাই-স্পেল কার্যকারিতা ওভাররাইট করার চেয়ে একটি পৃথক গৌণ মোড হিসাবে চাই। এটি প্রয়োজনে ফ্লাই-স্পেলের পরিবর্তে বা পরিবর্তে সক্রিয় করা যেতে পারে


1
আমি নিশ্চিত যে এটি সম্ভব (এবং সম্ভবত হ্যাক করা খুব কঠিন নয়) তবে আমি বলতে বাধ্য হই যে এই আইএমএইচও খুব খারাপ ধারণা হবে।
এমবার্ক

1
@ এমবার্ক ফ্লাই-স্পেল কীভাবে কাজ করে তা পরিবর্তন করা একটি খারাপ ধারণা হবে, তবে অতিরিক্ত মাইনর মোড যা চাহিদা অনুসারে সক্রিয় / নিষ্ক্রিয় করা যেতে পারে তাতে কী সমস্যা?
টাইম্রিক

আমি আমার ফোনে একটি অনুরূপ বৈশিষ্ট্য দ্বারা ক্রমাগত বিরক্ত। আমি ভান যে, তারা আমাকে চেয়ে আরও স্মার্ট হয় মেশিন পছন্দ না, বিশেষ করে যে তারা না ;-): তারা শব্দভান্ডার অত্যন্ত সীমিত, বিশেষ করে যে আমি মাঝে মাঝে চান (কিছু সংজ্ঞাবাচক বিশেষ্য মত) অ শব্দ টাইপ করতে।
এমবর্ক

@ এমবার্ক সত্য, তবে এর বিভিন্ন সুবিধাও রয়েছে, যেমন প্রতিটি টাইপ করার বিষয়ে চিন্তা না করা '। আমি একটি জার্মান কীবোর্ড ব্যবহার করি এবং আমার গোলাপিগুলি প্রতিবার আমি এই কীটি পৌঁছানোর জন্য
স্প্লিটগুলি করতে হবে

1
@ এমবর্ক "নন_ওয়ার্ডস" ইস্যুটি সমাধান করার জন্য, আমরা কি সম্ভবত S-SPC"একা রেখে যাব" বাঁধাই করতে পারি ?
টাইম্রিক

উত্তর:


6

আমাকে এটিতে আমার পোস্টে আপনাকে রেফার করি ।


আমি খুঁজে পেয়েছি যে সংক্ষিপ্তগুলি সংশোধন করার সর্বোত্তম উপায় SPC, আপনাকে কেবল নিজের পছন্দসই সংশোধন করতে হবে। তার জন্য, আমি নিম্নলিখিত পদ্ধতির গ্রহণ করি:

  1. আপনার init ফাইলটিতে নীচের কোডটি যুক্ত করুন।
  2. আপনি যেখানেই কোনও ভুল টাইপ করুন, আঘাত করুন C-x C-iএবং প্রদত্ত সংশোধনগুলির মধ্যে একটি চয়ন করুন।
  3. এটাই! সংশোধনটি সেখানে স্বয়ংক্রিয়ভাবে প্রতিস্থাপন করা হবে এবং আপনি এখন থেকে এই ভুলটি করে প্রতিটি সময় স্বয়ংক্রিয়ভাবে সঞ্চালিত হবে।

এখানে কোড

(define-key ctl-x-map "\C-i" 'endless/ispell-word-then-abbrev)

(defun endless/ispell-word-then-abbrev (p)
  "Call `ispell-word'. Then create an abbrev for the correction made.
With prefix P, create local abbrev. Otherwise it will be global."
  (interactive "P")
  (let ((bef (downcase (or (thing-at-point 'word) ""))) aft)
    (call-interactively 'ispell-word)
    (setq aft (downcase (or (thing-at-point 'word) "")))
    (unless (string= aft bef)
      (message "\"%s\" now expands to \"%s\" %sally"
               bef aft (if p "loc" "glob"))
      (define-abbrev
        (if p local-abbrev-table global-abbrev-table)
        bef aft))))

(setq save-abbrevs t)
(setq-default abbrev-mode t)

ম্যানুয়ালি, সংশোধনগুলি যুক্ত করা জটিল মনে হতে পারে, তবে এটি আসলে তা নয়। আপনি কেবল কয়েকটি চাবি মারছেন, এবং কয়েকটি সংশোধন লক্ষ্য করবেন আপনি দীর্ঘ পথ পাবে।

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


আমি একটি প্রতিকল্পন যোগ চেষ্টা dontকরতে don'tব্যবহার C-x C-i 1কিন্তু এটি চিঠি যোগ tপরিবর্তে ( "dont" now expands to "t" globally)। আমি মনে করি না এটি অ্যাডাস্ট্রোফগুলি ভালভাবে পরিচালনা করে। যে জন্য একটি ফিক্স আছে কি?
টাইম্রিক

@ টিমি কি এটি একটি প্রোগ্রামিং মোডে? পাঠ্য-মোডে যা আমার পক্ষে হয় না।
মালবারবা

আমি এটি একটি জ্যাবার কথোপকথনে চেষ্টা করেছি, তবে আপনার মন্তব্যের পরে আমি এটি টেক্সট-মোডে পরীক্ষা করেছি এবং এটি বিশ্বব্যাপী কাজ করেছে। আপনাকে ধন্যবাদ
Tymric

2

এখানে একটি সহজ প্রচেষ্টা:

(defun my-flyspell-correct-on-space ()
  (interactive)
  (when flyspell-mode
    (flyspell-auto-correct-word))
  (self-insert-command 1))
(local-set-key " " 'my-flyspell-correct-on-space)

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


6
আমি বরং স্পেস কীটি একা রেখে দেব এবং পরিবর্তে post-self-insert-hookফাঁকা স্থান সন্নিবেশকে ট্র্যাক করতে এবং সে অনুযায়ী কাজ করতে চাই। এটি নিরাপদ এবং আরও কার্যকর।
লুনারিওর

1

স্বয়ংসংশোধন এবং @ লেগোস্কিয়ার উত্তর সম্পর্কে আরও একটি প্রশ্ন দ্বারা অনুপ্রাণিত দেরী উত্তর । এখানে একটি দ্রুত গৌণ মোড ফ্লাইটে স্বতঃ-সংশোধন করবে ব্যবহার করছে flyspell। এটি বাস্তবে "গ্লোবাল" যা এটি পরামর্শ দেয় self-insert-commandতবে এটি কেবল flyspell-modeচালু বাফারে আগুন ধরে।

(defun flyspell-ac-word (&optional arg)
  "Autocorrect a word when entering a non-word character."
  (when flyspell-mode
    (unless (eq ?w (char-syntax (string-to-char (this-command-keys))))
      (when (or (bobp)
                (eq ?w (char-syntax (char-before))))
        (flyspell-auto-correct-word)))))

(define-minor-mode flyspell-autocorrect-mode
  "Toggle `flyspell-autocorrect-mode'.  Fires flyspell on a
just-completed word.  Only operates when `flyspell-mode' is on."
  :init-value nil
  :lighter (" AC")
  (if flyspell-autocorrect-mode
      (progn 
        (require 'flyspell)
        (advice-add #'self-insert-command :before #'flyspell-ac-word))
    (advice-remove #'self-insert-command #'flyspell-ac-word)))
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.