سؤال شاشة "أقل" الأمر المقاصة عند الخروج - كيفية إيقاف تشغيله؟


كيفية اجبار less برنامج لعدم مسح الشاشة عند الخروج؟

أود أن تتصرف مثل git log أمر:

  • فإنه يترك الصفحة المعروضة مؤخراً على الشاشة عند الإنهاء
  • لا يخرج less حتى إذا كان المحتوى يلائم شاشة واحدة (حاول git log -1)

أيه أفكار؟ لم أجد أي مناسبة less خيارات ولا متغيرات ENV في دليل ، وأظن أنه تم تعيينه من خلال بعض المتغيرات env على الرغم من.


73
2018-02-09 11:21


الأصل


من المفترض أنك تحتاج إلى جانب التمرير من أقل ، لذلك more لن تكون مناسبة؟ - Svend


الأجوبة:


كى تمنع less من مسح الشاشة عند الخروج ، استخدم -X.

من الصفحة الرئيسية:

-X أو - لا-init

يعطل إرسال التهيئة termcap و deinitialization   سلاسل إلى المحطة. هذا هو مرغوب فيه في بعض الأحيان إذا كان   سلسلة deinitialization يفعل شيئا غير ضروري ، مثل المقاصة   الشاشة.

أما بالنسبة إلى الخروج أقل إذا كان المحتوى يلائم شاشة واحدة ، فهذا خيار -F:

-F أو --quit-if-one-screen

يتسبب أقل لإنهاء تلقائياً إذا كان الملف بالكامل   عرض على الشاشة الأولى.

-F ليس الافتراضي على الرغم من ذلك ، فمن المرجح مسبقا في مكان ما بالنسبة لك. تحقق من env var LESS.


89
2018-02-09 11:59



ممتاز! -X هو ما كان يدور في خلدي. - Wojciech Kaczmarek
هذا مزعج بشكل خاص إذا كنت تعرف -F لكن لا -X، لأن الانتقال إلى نظام يعيد تعيين الشاشة على init سيجعل الملفات القصيرة ببساطة لا تظهر ، بدون سبب واضح. هذا بت لي مع ack عندما حاولت أن أغتنم ACK_PAGER='less -RF' الإعداد إلى نظام التشغيل Mac. اشكرك كثيرا! - markpasc
markpasc: شكرًا على التنويه. لم أكن لأدرك أن هذا المزيج سيسبب هذا التأثير ، لكنه الآن واضح. - sleske
هذا مفيد بشكل خاص للرجل النداء ، بحيث لا تختفي صفحات الرجل بمجرد الإقلاع أقل مع المفتاح 'q'. أي أنك تقوم بالتمرير إلى الموضع في صفحة man تهتم بها فقط حتى تختفي عند إنهاء جهاز النداء الأقل لاستخدام المعلومات. لذا ، أضفت: export MANPAGER='less -s -X -F' إلى بلدي. bashrc للحفاظ على معلومات الصفحة رجل على الشاشة عندما أقل من ذلك ، حتى أتمكن من استخدامها في الواقع بدلا من الاضطرار إلى حفظه. - Michael Goldshteyn
انها تمتص نوعا ما عليك أن تقرر عندما تبدأ less كيف يجب أن تتصرف عندما تخرج. - Michael Burr


إذا كنت ترغب في أن يكون أي من خيارات سطر الأوامر هو الافتراضي دائمًا ، فيمكنك إضافته إلى .profile أو .bashrc متغير بيئة LESS. فمثلا:

export LESS="-XF"

سيطبق دائمًا -X -F كلما تم تشغيل أقل من جلسة تسجيل الدخول تلك.

في بعض الأحيان تكون الأوامر مستعارة (حتى بشكل افتراضي في توزيعات معينة). للتحقق من هذا ، اكتب

alias

بدون أي حجة لمعرفة ما إذا كان قد تم استضافته بخيارات لا تريدها. لتشغيل الأمر الفعلي في PATH $ بدلاً من اسم مستعار ، فقط قم بتهيئته بخط مائل:

\less

لمعرفة ما إذا كان متغير بيئة LESS قد تم تعيينه في البيئة الخاصة بك والتأثير على السلوك:

echo $LESS

15
2017-07-11 19:11



في الواقع ، أقوم بإضافة export LESS="-XFR" بحيث تظهر الألوان من خلال lessكذلك. - dotancohen
شكرا على ذلك! -XF من تلقاء نفسها كان كسر انتاج git diffو -XFR يحصل على أفضل ما في العالمين - لا يوجد مقاصة للشاشة ، ولكن ملونة git diff انتاج. - Giles Thomas