Terminal, shift-pageup / shift-pagedown yerine pageup / pagedown kullanıyor mu?


12

Gnome terminalinde, komut satırında, sonlandırıcıda ve guake vb.

Bu uygulamaların kolayca sayfalama yapmak için düz sayfa yukarı ve sayfa aşağı tuşlarını kullanmasının herhangi bir yolu var mı?

Yanıtlar:


9

Korkarım ki bu mümkün değil, çünkü bazılarını kullanılamaz hale getirecek olan komut satırı uygulamalarına hiçbir PgUp / PgDown gönderilmeyecek. Bu gün Unix özelliği için iyidir.

Daha kullanıcı dostu kaydırma istiyorsanız, lesskomutu kullanmanızı öneririm . Bu şekilde kullanılır:

command-with-lot-of-output | less

Bu, lesskomutu orijinal komutunuzun çıktısıyla başlatacaktır . ( Diğer programlara boru çıkışı hakkında daha fazla bilgiyi şu adreste bulabilirsiniz: http://www.dsj.net/compedge/shellbasics1.html )

Daha az oklar veya PgUp / PgDown kullanılarak gezilebilir. Rahatınız için arama ve daha fazlasını da sağlar (daha fazla bilgi man lessiçin bkz .). lessSadece qtuşa basarak çıkabilirsiniz .


3
Bu konuda heck araştırdım ve 100'den fazla tuş vuruşunda komut konsolunda eşleştirebileceğiniz görünse de, sayfa yukarı ve sayfa aşağı ikisi değil!
HDave

daha azı, terminalinizin içeriğinde yukarı / aşağı kaydırmak için uygun değildir ve onu çağırmak, shift tuşuna basmaktan daha kolay değildir. Jakub'ın hatası değil, ama bu sorunun cevabı olmadığı için üzücü.
Jonathan Hartley

@HD İşte xterm unix'te
William

1
@JonathanHartley burada xterm bunu yapmak için nasıl unix.stackexchange.com/questions/339160/...
William

1

xtermAşağıdaki ~/.Xresourcesgibi tuş bağlantılarını (in ) kullanın ve değiştirin :

xterm*VT100.Translations: #override \n\
    <KeyPress>Prior:scroll-back(1,page)\n\
    <KeyPress>Next:scroll-forw(1,page)\n\

gnome-terminal PageUp / PageDown, terminal içindeki uygulamalar içindir ve bunları kullanmak kafa karıştırıcı olacaktır ...


o zaman xterm neden gnome terminalini değil seçeneği destekliyor? Her iki şekilde de yukarıdaki cevabı birbirine bağlayan ve ödülü yayınlayan kişiyim, bu cevaba bir ödül vermiyorum.
William

askubuntu.com/users/33577/liam-william Oops, aşağıya kadar okumadım (üstte, pano ile ilgili). Ve: yeterince adil! Bana vermezdim: GNOME terminali durumunu destekleyen bir URL yayınlamaya çalıştım, ancak bulduğum tek şey eski, yani var olmayan bağlantılar ...
aba

1

Konsole , KDE için, kullanım için yapılandırılabilenPage UpvePage Downdoğrudan çağrı için anahtarlarsağlayan ilgili seçenek sunan bir terminal emülatörüdür. Böyle bir özelleştirme için Konsole kadar kolay bulduğum başka terminal emülatörleri yok.

Sayfalama nasıl yönlendirilir

Konsole'de aşağıdaki adımları uygulayın.

  1. Menü çubuğunda, "Ayarlar" a gidin ve "Mevcut Profili Yapılandır ..." (Kubuntu 12.04) veya "Mevcut Profili Düzenle ..." (Kubuntu 16.04) seçeneğini tıklayın, bir pencere görünecektir.

  2. Önceden tanımlanmış anahtar bağlantıları listelerini içeren "Anahtar Bağlantıları" adlı bir bölümü olan "Giriş" sekmesine (Kubuntu 12.04) veya "Klavye" sekmesine (Kubuntu 16.04) tıklayın.

    Konsole'de Anahtar Bağlantılar

  3. "Varsayılan (XFree 4)" seçeneğini seçin ve "Düzenle ..." düğmesini tıklayın, ardından başka bir pencere görünecektir.

  4. Aşağı kaydırın ve PgDown-Shift-AnyModifierçıktı ile tuş kombinasyonunu arayın \E[6~. Bu çıktıyı olarak yeniden adlandırın ScrollPageDown.

  5. Aşağı kaydırın ve PgUp-Shift-AnyModifierçıktı ile tuş kombinasyonunu arayın \E[5~. Bu çıktıyı olarak yeniden adlandırın ScrollPageUp.

  6. Pencereleri bitirmek ve kapatmak için "Tamam" düğmesine tıklayın.

Çıktı nasıl test edilir

3. adımda, her tuşa basıldığında çıkışı onaylamak için "Test Alanı" vardır.

  • Odağı "Giriş:" metin alanına getirmek için tıklayın ve Page Upve Page Downtuşlarına basın (her seferinde bir tane).

  • Çıktının, yeniden adlandırılanlarla aynı olduğunu onaylayın.

    Konsole'de Anahtar Bağlama Listesi ve Test Alanı

Veya iletiyi döngü içinde yankılamak için basit bir komut dosyası yazın. Kendi betiğimi aşağıdaki gibi ekledim.

  • Aşağıdaki kod satırlarını kopyalayıp metin düzenleyicisine yapıştırın.

    #!/bin/bash
    
    echo "Started script"
    echo "If no input, then loop"
    while true
    do {
        echo "Hello, world"
        echo "Wait 1 second to loop [q to quit]"
        read -t 1 -n 1 INPUT && echo
        if [ "$INPUT" == "q" ]
            then break
            else echo "UTC now: $(date -u +%H%M%S)"
        fi
        continue
    }
    done
    echo "Ended script"
    
  • Dosya olarak kaydet ie loop.shve komut dosyasını terminal ie'de bash loop.shçalıştır (çalıştırılamaz).

  • Yankılanan mesajlar görüntüleme alanını doldurana ve çıktıyı aşağı kaydırmaya başlayana kadar bekleyin.

  • Ardından, görüntüleme alanında yukarı ve aşağı kaydırmak için Page Upve Page Downtuşlarına basın .

Kubuntu 12.04'te Konsole 2.8.5, KDE 4.8.5 kullanarak test yaptım.

Bonus: Anahtar kombinasyonu ve çıktı

Tamam, açıklama için bonus cevap. Birisi neden bu tuş kombinasyonunu düzenlemek zorunda olduğumu merak edebilir, başkalarını değil. Bunu daha önce çeşitli klavye türlerini test ederek anladım.

Aşağıdakiler, Konsol'daki "Test Alanı" kullanılarak belirlenen varsayılan tuş kombinasyonu ve çıktısıdır.

Birincil Sayfa Yukarı / Sayfa Aşağı tuşları için ( FnFn + PgUp / Fn + PgDn tuşlarına basmayı gerektiren klavye varyantı dahil ):

  • Tuş kombinasyonu: PgDown-Shift-AnyModifier Çıktı:\E[6~

  • Tuş kombinasyonu: PgUp-Shift-AnyModifier Çıktı:\E[5~

İkincil Sayfa Yukarı / Sayfa Aşağı tuşları için (Terminalde ShiftShift + PgUp / Shift + PgDn tuşu gerektiren varsayılan kısayol ):

  • Tuş kombinasyonu: PgDown+Shift-AppScreen Çıktı:ScrollPageDown

  • Tuş kombinasyonu: PgUp+Shift-AppScreen Çıktı:ScrollPageUp

Birincil ve ikincil anahtarlar için her bir anahtar kelime arasında eksi -ve artı +işaretlerinin farklı olduğuna dikkat edin . Anahtar basışları en azından Konsole'de eşdeğer karakterlere nasıl dönüştürülür.

Ancak, bu eşdeğer karakterlerin diğer terminal öykünücüler tarafından gerçekten anlaşılıp anlaşılmadığından emin değilim. Bu kendi deneyimlerimle bildiğim kadarıyla.

Karar

Çeşitli yapılandırma dosyaları ve bu tür sıkıcı çözümlerle uğraşmayı sevmeyen güç kullanıcıları için Konsole kalbinizi kolayca kazanacaktır. Görünüşe göre hiç kimse Konsole ve KDE tarafından son dört yıldır sunulan bu kişiselleştirme seviyesini fark etmemişti. Ne kadar garip.


Bu yüzden, anahtar kombinasyonunu değiştirmek için vardiya ayarına basmaya PgDownçalışıyorum, bir sebepten dolayı işe yaramıyor.
William

Varsayılan kısayolu kaldırmak istiyor musunuz? Çıkış alanını boşaltma değil çalışır, varsayılan çıkış yerine ScrollPageDown, ScrollPageUpeskiden yerini ile \E[6~, \E[5~için PgDown+Shift-AppScreenve PgUp+Shift-AppScreensırasıyla anahtar açılan. Ayarların uygulanması için "Tamam" ı tıklamak önemlidir.
clearkimura

hayır PgDown ve PgUp ile aynı anda Shift tuşuna basmak istemiyorum. Bunun soruyu cevapladığına inanmıyorum.
William

Yani 4., 5. adım sizin için işe yaramadı mı? Garip. Gördüklerinizi göstermek için bağlantı içeren bir ekran görüntüsü var mı?
clearkimura

1
Bu, Fedora 24'te Konsole 16.08.3'te bir cazibe gibi çalıştı. Birkaç küçük fark var - sekmeye "Giriş" yerine "Klavye" denir, ancak sonuçta çıktının nasıl yeniden adlandırılacağını gösteren bölüm . Sahip olduğum 10 yıllık kaşıntıyı çıkardığınız için teşekkürler! ++ 1 ... +10 verebilirsem, yapardım.
Mike S

-2

moreKomutu şu şekilde kullanabilirsiniz :

command-with-lots-of-output  |  more

bu komut orijinal çıktınızı daha fazlasıyla başlatacaktır.

more'boşluk' ile gezilebilir. Sadece boşluğa basın ve komutun çıktısını sayfa olarak görün.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.