তীর কীগুলি স্বতঃস্ফূর্তভাবে ভিমে কাজ করা বন্ধ করে দেয়


25

আমি সম্প্রতি ওএস এক্স 10.6 (আমার মনে হয়) থেকে 10.9 এ আপগ্রেড করেছি। তখন থেকেই মনে হয় এডিট করার সময় vimতীর কীগুলি "স্বতঃস্ফূর্তভাবে" কাজ করা বন্ধ করে দেবে।

এক পর্যায়ে হতাশায় আমি তীর কীগুলির একটি "ছাঁটাই" করে এবং অবশেষে একটি "E388 একটি সংজ্ঞা পাওয়া যায়নি" ত্রুটি দেখানো হয়েছিল । অন্য সমস্ত সময় আমি এটির অভিজ্ঞতা পেয়েছি, তীরগুলি, কিছুক্ষণ কাজ করার পরে, হঠাৎ আমার দিকে ঝোঁক শুরু করে !

প্রস্থান এবং পুনরায় খোলার ফলে অস্থায়ীভাবে সমস্যার সমাধান হয় । তবে, আমি এটি আটকাতে চাই !

কেউ কি জানেন এটি কি হতে পারে? এবং কিভাবে এটি ঠিক করবেন?


দেখে মনে হচ্ছে vimrcআপডেটের সময় আমার ডিফল্টটি পরিবর্তিত হয়েছিল। আমার স্মৃতি যদি সঠিক হয় তবে এটি আগে একটি দুর্দান্ত ফাইল ছিল। এখন, এটিতে এটি রয়েছে:

" Configuration file for vim
set modelines=0         " CVE-2007-2438

" Normally we use vim-extensions. If you want true vi-compatibility
" remove change the following statements
set nocompatible        " Use Vim defaults instead of 100% vi compatibility
set backspace=2         " more powerful backspacing

" Don't write backup file if vim is being called by "crontab -e"
au BufWrite /private/tmp/crontab.* set nowritebackup
" Don't write backup file if vim is being called by "chpass"
au BufWrite /private/etc/pw.* set nowritebackup

এই বিকল্পগুলি এখনও কী করে তা আমার কোনও ধারণা নেই। আমি এটি খতিয়ে দেখব - তবে, আশা করি এখানে গুগল করা এবং পড়ার চেয়ে এখানে কেউ আরও দ্রুত জানেন ...


আমি আরও বুঝতে পেরেছি যে এখানে একটি অ্যাপল কেন্দ্রিক ফোরাম রয়েছে যা এই প্রশ্নের পক্ষে আরও উপযুক্ত হতে পারে। সুতরাং, যদি এটি ওএস এক্স এর চেয়ে বেশি শর্ত হয় তবে vimসম্ভবত কোনও মোড আমার পক্ষে এটি স্থানান্তর করতে পারে।
এসভিডজেন

2
কলেজে একটি "প্রাইম" মেইনফ্রেমে কাজ করার কথা মনে করিয়ে দেয়। প্রফেসর শিখিয়েছিলেন যে আপনার কখনই তীর কী ব্যবহার করা উচিত নয় vi। সর্বদা hjkl ব্যবহার করুন। প্রাচীন হার্ডওয়্যারটিতে "তীর" কীগুলি ব্যবহার করা যায়।
রেড ক্রিকেট

ঠিক আছে ... তবে, তীরচিহ্নগুলি ব্যবহার করা উচিত। আপনার অধ্যাপক ভাবেন না কেন সেগুলি আমার ব্যবহার করা উচিত। এবং আমি তাদের মাঝে মাঝে সুবিধাজনক বলে মনে করি। সুতরাং, সমাধান দেখার জন্য অপেক্ষা করছি।
এসভিডজেন

1
আপনি যখন বাফারে কীটি আক্ষরিক ?োকান তখন কী ঘটে? সন্নিবেশ মোডে যান এবং Ctrl + v টিপুন, তারপরে একটি তীর কী। তেজ আমার ম্যাক শো হিসাবে আপ তীর কী ^[OA, নিচে যেমন ^[OB, ডান যেমন ^[OC, এবং বাম ^[OD। সমস্যাটি নিজেকে উপস্থাপন করার আগে এবং পরে পরীক্ষা করুন
নাথান ওয়ালেস

@ নাথানওয়্যালিস নিশ্চিত হন না যে আমি কীভাবে আপনার প্রশ্নটিকে উপেক্ষা করেছি। আমি যখন আমার ম্যাকের পাশে আছি তখন চেষ্টা করব।
এসভিডজেন

উত্তর:


24

জেমস হজকিনসনের ব্লগে পাওয়া যায় , নিম্নলিখিত কমান্ডটি আমার পক্ষে কাজ করে। নোট করুন এটি ভিম স্ক্রিনটি রিফ্রেশ করবে।

:!reset

আমি কীভাবে এই উত্তরটিকে উপেক্ষা করেছি তা নিশ্চিত নয় তবে এটি দেখতে খুব আশাব্যঞ্জক!
এসভিডজেন

প্রকৃতপক্ষে ... নিবন্ধে বর্ণিত হিসাবে Ctrl + R হিট করা উপরের নাথন সম্পর্কে আমার প্রতিক্রিয়াতে উল্লিখিত ভুল তীর-কী ম্যাপিংয়ের সাথে বিষয়টি পুরোপুরি সামঞ্জস্য করে r এবং রিসেট কমান্ড সেক্ষেত্রে এটি সমাধান করে। এবং .. আমি নির্ভরযোগ্যভাবে সমস্যাটি অন্য কোনও উপায়ে পুনরুত্পাদন করতে পারি না, সুতরাং এটি অবশ্যই সবচেয়ে কার্যকর উত্তর!
এসভিডজেন

11

আমি কয়েকবার পাশাপাশি এই সমস্যায় পড়েছি। আমি অন্য কম্পিউটারে জিএনইউ স্ক্রিন চালিয়ে যাচ্ছি যেটিতে আমি এসএসএইচ দিয়ে লগ ইন করেছি। সমস্যা সমাধানের জন্য, আমি আমার পর্দা (গুলি) বিচু্যত ( Ctrl- a d), মেশিনের বন্ধ লগ ফিরে লগ, এবং ব্যবহার reattached screen -x। এটি মেশিনটি লগ-অফ না করেই কেবল স্ক্রিনটি আলাদা করে এবং পুনরায় সংযুক্ত করে কাজ করতে পারে। আমি যদিও মনে করতে পারি না।


আমার স্ক্রিন সেশনটি বন্ধ করা এবং এটি পুনরায় চালু করা আমার জন্য এটি স্থির করে।
এানো

1
এটা আমার জন্য সমস্যা ছিল। একরকম চমকপ্রদ screenঅবস্থায় পড়েছিল (কোনও এসএসএস সংযোগের ওপরে)। সেই টার্মিনালটি বন্ধ করে আবার ssh করুন এবং screen -rdকৌশলটি করলেন। ধন্যবাদ!
পিয়ের ডি

@ পিয়ারডিড সঠিক, আমি এই ইস্যুটি কয়েকবার ইতিমধ্যে screenচালিয়েছি - একটি সেশনেও, ডিচাচ এবং রিটাচ সমস্যাটি সমাধান করেছেন, ধন্যবাদ!
stdcerr

6

পথে /usr/share/vim/আমি .vimrcফাইলটি পেয়েছি ... সেখানে আমি লাইনটি যুক্ত করেছি

set term=ansi 

এটা আমার জন্য কাজ করে। এখন তীর কীগুলি ভিম সম্পাদকটিতে সঠিকভাবে কাজ করছে।


2
এটি আমার জন্য এটিও স্থির করে, যেহেতু সর্বশেষ উইন্ডোজ 10 ডাব্লুএসএল / উবুন্টু আপডেট এটি ভেঙেছে।
গ্রে ফক্স

3

এটি আপনার ইস্যুটির মতো খুব মনে হচ্ছে। নিবন্ধটির শিরোনাম: ভিমে কার্সার কী: আপনি ম্যাকিং মি ক্রেজি!

উদ্ধৃতাংশ

Vim অনেক পরিস্থিতিতে বিশেষত দ্রুত সম্পাদনাগুলির জন্য (বিশেষত রুট হিসাবে) এবং দূরবর্তী সার্ভারে ফাইল সম্পাদনা করার জন্য দরকারী। ম্যাক বুক প্রো এর সাথে আমার নয় মাসের মধ্যে আমি যে বিরক্তি পেয়েছি তা হ'ল ভিমের কার্সার কীগুলি লাইন পরিবর্তনের পরিবর্তে সন্নিবেশ বা কমান্ড মোড উভয় বেল বাজায়। ম্যাকপোর্টের মাধ্যমে 7 সংস্করণে আপগ্রেড করা একই ফলাফল পেয়েছে। আরএক্সভিটি থেকে আমার টিআরএমটি ভিটি 220 এ স্যুইচ করার পরে কার্সার কীগুলি কাজ করেছিল! ডাউনসাইডটি সিনট্যাক্স হাইলাইট করে কাজ করা বন্ধ করে দিয়েছে।

ভাগ্যক্রমে, আমার গুগল অনুসন্ধান প্যারামিটারগুলিতে ভিটি 220 যুক্ত করা ভিম ডকুমেন্টেশনে ভিটি 100-কার্সার-কীগুলির জন্য একটি রেফারেন্স তৈরি করে। সমস্যাটি সমাধানের জন্য আপনার .vimrc ফাইলে নিম্নলিখিত কোডটি যুক্ত করুন:

    :set notimeout          " don't timeout on mappings
    :set ttimeout           " do timeout on terminal key codes
    :set timeoutlen=100     " timeout after 100 msec

একই নিবন্ধে ওএসএক্সের পরিবর্তে আপনার সেট $TERMকরার আরও একটি পরামর্শ রয়েছে linux

উদ্ধৃতাংশ

আরও ভাল সমাধান হ'ল TERM এর জন্য ডিফল্ট মানটিকে লিনাক্স বা dtterm এ পরিবর্তন করা হয় যেহেতু TERM মান দূরবর্তী সার্ভারে নেওয়া হবে। এই দিন এবং বয়সে, আমি বেশিরভাগ সার্ভারগুলি এই উভয় টার্মিনাল প্রকারকে সমর্থন করি।


হুম ... আমি এখন আরও বিভ্রান্ত আমি ভেবেছিলাম আমার কাছে গ্লোবাল / ডিফল্ট .vimrcফাইল রয়েছে। কোনও ওএস এক্স আপডেটের সময় এগুলি সরানো বা সরানো হত?
এসভিডজেন

@ এসভিডজেন - না, আমি মনে করি না যে এটির পরিবর্তিত হয়ে গিয়েছিল, তবে এই সমস্যাটি আপনার মতোই এর-রিলির মতো মনে হয়েছিল এবং সমাধানটি চেষ্টা করার পক্ষে যথেষ্ট সহজ, তাই আমি ভেবেছিলাম যে আমি এটি আপনার সাথে ভাগ করে নিই। ঘটনাচক্রে আপনার $TERMউপর পরিবর্তন হতে পারে।
slm

চাকা, এটি অবশ্যই এখানে সবচেয়ে প্রাসঙ্গিক উত্তর। +1 এর জন্য দুর্ভাগ্যক্রমে, এটি এখনও সমস্যা সমাধান করে কিনা তা নিশ্চিত নয়, যেহেতু আমি ধারাবাহিকভাবে সমস্যাটি পুনরুত্পাদন করতে পারি না।
এসভিডজেন

এই ফিক্সটি প্রয়োগ করার পরে, সমস্যাটি আবার দেখা দিয়েছে। এখনও একটি প্রাসঙ্গিক উত্তর, +1 রেখে। তবে, আপনি অতিরিক্ত উত্তর সরবরাহ করতে আগ্রহী হলে দয়া করে উপরে আমার মন্তব্যটি দেখুন।
এসভিডজেন

0

আপডেটে অভিনন্দন। আমি উইকএন্ডে আমার নিজের আপডেটটি করেছি এবং আমার নিজস্ব কিছু বিজোড় কীবোর্ড সমস্যা নিয়ে কাজ করছি।

এখানে আমার কয়েকটি জিনিস দরকার ছিল:

  • পুরানো লজিটেক গেমিং সফ্টওয়্যার সরান এবং আপগ্রেড করুন। এটি করার আগে আমার স্কোয়ার এবং কোঁকড়া ধনুর্বন্ধনী ব্যবহার করে আমার সমস্যা ছিল। বিশেষ কীগুলি প্রায়শই এসআইএস - [ভিআইএম প্রসঙ্গে সিকোয়েন্সগুলি প্রেরণ করে যাতে এটি প্রাসঙ্গিক হতে পারে।
  • সিস্টেম প্রিফেসে যান: সুরক্ষা এবং গোপনীয়তা: গোপনীয়তা: অ্যাক্সেসযোগ্যতা এবং কয়েকটি অ্যাপ্লিকেশন সক্ষম করুন (synergy_server এবং লজিটেক গেমিং সফ্টওয়্যার)। এই পরিবর্তনের আগে আমি আমার অন্যান্য কম্পিউটারগুলিকে সিঙ্কির সাথে নিয়ন্ত্রণ করতে বা আমার জি 11 এর সাথে ম্যাক্রোগুলি ব্যবহার করতে অক্ষম ছিল। আমি সন্দেহ করি এটি আপনার জন্য সরাসরি সংযোগ তবে অ্যাক্সেসিবিলিটি বিকল্পগুলি নতুন এবং আপনার অন্য কোনও অ্যাপ্লিকেশনটিতে প্রয়োগ হতে পারে।

0

আপনি যদি .sqlফাইলগুলিতে কাজ করছেন vim(তবে আপনি উল্লেখ করেন না) এটি আপনাকে সহায়তা করতে পারে। আমি কেবল অন্য দিন এটি মোকাবেলা করেছি।

ফাইল এ ~/.vimrc

let g:omni_sql_no_default_maps = 1

এই বিশেষ বিষয়টি এখানে আলোচনা করা হয়

আপনি যদি .sqlফাইলগুলির মধ্যে এই সমস্যাটি না অনুভব করেন vimতবে আমি ক্ষমাপ্রার্থী, আমার একমাত্র চিন্তা হবে vimসমস্যাটি দেখা দিলে ম্যাপিংটি যাচাই করা ।

:map Ctrl V → আপনি যখন আপনার তীর ব্যবহারের ক্ষমতা হারাবেন, সেই আদেশটি করুন এবং ম্যাপিং অদৃশ্য হয়ে গেছে কিনা তা দেখুন। যদি এটি হয়ে থাকে তবে এটি আপনাকে খনন শুরু করার জায়গা দেয়।


0

আমার একটি এসএসএইচ অধিবেশনে এই সমস্যাটি ছিল এবং লগ আউট করে আবার সমাধান করে আবার সমাধান করেছিলাম:

exit
ssh ...

ওজন করার জন্য ধন্যবাদ। নির্বাচিত উত্তর যদিও ধারাবাহিকভাবে আমার জন্য কাজ করেছে। আপনি কি এটা চেষ্টা করেছেন?
এসভিডজেন

হ্যাঁ, গৃহীত সমাধানটি উবুন্টু 18-তে কাজ করে না I শুধুমাত্র লগ আউট করে আবার তীর কার্যকারিতা পুনরুদ্ধার করুন।
দুহাইম

0

যখন আমি একটি "সিস্টেম এনভায়রনমেন্ট ভেরিয়েবল" উইন্ডোজ ব্যবহৃত সেটিং আমি এই সমস্যা ছিল TERMথেকে xterm-256colorvimআমি যখন ভেরিয়েবলটি আবার মুছলাম তখন সমস্যাটি চলে গেল (এবং আমার স্বাভাবিক অবস্থায় ফিরে গেল )।

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