سؤال

يمكنني استخدام vim (7.1) على نظام الذاكرة الافتراضية المفتوح V7.3-2.

الاتصال VMS الحوض جلسة عمل telnet مع SmartTerm ، محاكي الطرفية.

أنه يعمل بشكل جيد.

ولكن عند بدء تشغيل جلسة عمل telnet من VMS دورة (الاتصال عبر SmartTerm) إلى آخر VMS الدورة بعض المفاتيح لا تعمل بشكل صحيح.

|--------------| telnet   |-------------| telnet   |-----------------|
|  Smartterm   | ------>  | VMS, Vim OK | ------>  | VMS, Vim broken |
|--------------|          |-------------|          |-----------------|

إدراج أو حذف, المنزل, نهاية, PageUp و PageDown مثل ~ في الوضع العادي ( upcase إلى أحرف صغيرة أو العكس بالعكس )

أي فكرة ؟

=============================================

تحرير

أنا فقط أدركت أنني لم أذكر أن الثانية telneted الدورة على نفس VMS مربع.

أفعل ذلك لأنني أريد أن تفعل شيئا مع حقوق من مستخدم آخر.

هل كانت مفيدة؟

المحلول

بالإضافة إلى التغيير والتبديل الذي مضاهاة المحطة الطرفية المستخدمة ، كما أنها فكرة جيدة لمعرفة همة المفاتيح عن الإجراءات التي تحاول القيام بها.هذه هي أكثر موثوقية و لا تعتمد على المحطة أو لوحة المفاتيح.على سبيل المثال:

  • إدراج:أنا
  • المنزل:^ يذهب إلى الأول من غير فاصل شار, 0 يذهب إلى العمود الأول دائما
  • نهاية:$
  • PageUp, PageDown:ctrl-u, ctrl-d التحرك نصف صفحة في وقت واحد

نصائح أخرى

ولقد شهدت قضايا مماثلة بينما إحياء مربع سولاريس القديم المتربة. كنت كسول جدا للبحث عن كيف ينبغي أن تحدد لي t_ ... المتغيرات بشكل صحيح، ولذا فإنني إعادة تعيين من خلل أحرف النهائية بدلا من ذلك:

:map xxx 0          (press <C-v><Home> in place of xxx)
:map xxx <C-b>      (press <C-v><PgUp> in place of xxx)
... etc

إذا كنت تريد إعداد هذا الشيء اللعين الحق، RTFMing قد أكل بعض الوقت الأعصاب و:

:h terminal-options

وعادة ما يكون هذا بسبب مضاهاة المحطة الطرفية - حتى شيء لا تمر على المفاتيح الصحيحة من خلال. انها كانت منذ العصور لقد فعلت هذا، ولكن ننظر للأشياء مثل VT-100، وما شابه ذلك. أشك في أنها محددة لهمة، إما:)

وآسف لأنني لا يمكن أن يكون مزيد من المساعدة.

والسؤال الأول الذي يطرح نفسه هو ببساطة: ما أنت جالس أمام؟ هل أنت حقا على وحدة لVAX أو ألفا نظام الذاكرة الافتراضية المفتوح تشغيل؟ تخميني هو الجواب هو لا.

في الحادث بعيد احتمال أن الجواب هو نعم، ببساطة أدخل:

و$ إظهار TERMINAL

وتأكد من أن المتغير TERM على المضيف UNIX بعد مباريات هذا بالضبط.

إذا تخميني هو الصحيح وكنت جالسا أمام جهاز كمبيوتر شخصي أو جهاز ماكنتوش يعمل نوعا من محطة المحاكي مثل المعجون أو محطة، فأنت بحاجة إلى استكشاف خيارات البرنامج الخاص بك للتأكد من أن محطة انها محاكاة لتعكس بشكل صحيح في كل عرض العالم نظام VMS وأن المضيف UNIX بعيد.

وبمجرد أن ترد على أي نوع من محطة كنت محاكاة، استخدم الأمر VMS فوق مرة أخرى على نظام VMS كنت متصلا لضمان أن هناك مباراة.

إذا لم يكن كذلك، ببساطة تصحيح الوضع بكتابة:

و$ SET TERMINAL / DEVICE = (اسم termainal بك - على سبيل المثال VT100)

وثم تأكد من أن مصطلح على المضيف يونيكس بعيد يطابق ما يتم تعيين نظام VMS ل.

وبمجرد أن تفعل كل هذا، كل شيء يجب أن تعمل بشكل جيد.

بالإضافة إلى كيفية تعيين env المتغيرات على الجهاز الطرفي التوافق تلميح عن عميل telnet نفسها قد تكون مفيدة:

قبل المعتادة Esc الجمع بين استخدام Ctrl+ [مثللإنهاء همة

Ctrl+[ Esc :q!
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top