Bölünmüş ekran seçeneğiyle metin editörü


26

Bir kerede daha fazla editör penceresi açmadan birden fazla dosyaya (muhtemelen bir dosya ağacına erişerek) iki veya daha fazla parçaya "ekranı bölme" seçeneğine sahip bir editör var mı? komutları).

Kendimi netleştirip göstermediğimi bilmiyorum, ancak elde etmek istediğimi açıklamanın tek yolu "bölünmüş ekran". Programlamak için kullanmak istiyorum, düzenlemeye açık birden fazla dosya var. Bunları yapabiliyorsa, hem vi hem de emacs için oldukça yeniyim. Ayrıca, bunun bir terminal editörü üzerinden yapılması gerekiyorsa, ekran boyutuna bakmaksızın aynı terminalde yapılabilir mi?


1
Terminalleri değil özellikle editörleri sorduğunuzu biliyorum, ancak gelecekteki ziyaretçiler için not almanın değerli olduğunu düşünüyorum: terminal emülatörü terminatorayrıca bölünmüş ekran özelliğine de sahiptir: ctrl + shift + edikey olarak bölünecek ve ctrl + shift + oyatay olarak bölünecektir (ve ayrıca ctrl + shift + tyeni bir sekme açılacaktır)
Carlos Campderrós

@ CarlosCampderrós Aklımda tutacağım, teşekkürler!
Eve

1
@ CarlosCampderrós: ​​Diğer terminal emülatörlerinde bunu elde etmek için ekran veya tmux benzeri bir çoklayıcı da kullanabilirsiniz. Dezavantajı, tabii ki, önce onları çalıştırmak için hatırlamak zorunda, ancak esneklik muhtemelen buna değer.
Phoshi

Yanıtlar:


38

vim bunu kolayca yapabilirsiniz:

ctrl+ ws- Bölünmüş pencereler

ctrl+ ww- pencereler arasında geçiş yap

ctrl+ wq- Pencereden çık

ctrl+ wv- Pencereleri dikey olarak bölme

:sp filename

filenameYeni tamponda açılacak ve bir pencereyi bölecektir.

Ayrıca yapabilirsiniz

vim -o file1 file2

Dosyaları bölünmüş ekran düzeninde açmak için. Değiştir -oile -Odikey bölünme yerine yatay için.


4
Veya :help CTRL-Wtüm bölünmüş pencere işlemlerini görmek için yazın .
Bernhard

1
Vay harika! Ayrıca ": split" e rastladım, ancak yalnızca yatay olarak ayrılıyor. Lütfen bunun hangi versiyonunun olduğunu ekleyebilir misiniz? Teşekkürler!
Eve

@Eve VIM (Vi IMproved) kullanıyorum 7.3.
acele

1
@Eve - :vsplitDikey bir bölme oluşturmak için de kullanabilirsiniz ve :splitdosya adını veya komutunu kabul ettiği gibi
Yararsız

1
Ve <C-w>h/ j / k / l gibi pencereler arasında belirli yönlerde hareket eder, <C-w>H/ J / K / L (büyük harf) pencereyi bu yönde hareket ettirir.
Izkata

13

Bu Emacs kullanılarak yapılabilir. GUI ve terminal modunda çalışır. Hatta birden çok kez bölebilirsiniz. İşte bazı temel tuş kombinasyonları:

Cx 2 Seçilen pencereyi birbiri ardına iki pencereye bölün (pencerenin altı).
Cx 3 Seçilen pencereyi yan yana konumlandırılmış iki pencereye ayırın (sağa doğru bölün.
C-Mouse-2 Bir pencerenin mod satırında o pencereyi bölün.

Kaynak: http://www.gnu.org/software/emacs/manual/html_node/emacs/Split-Window.html


1
Emacs terminolojisine aşina olmayan herkes için, bir Emacs penceresinin başka birçok editörün bir ekran veya panel dediği şey olduğunu belirtmek önemlidir . Bir Emacs çerçeve diğerleri dediğimiz pencere (bir denir çerçeve çünkü pencereleri içindeki edilir çerçeveli masaüstü dekorasyon (başlık-bar ve sınırlar yoluyla) veya terminal ... tarafından , Windows ihtiva tampon (bazı metinleri; genellikle dosya).
Peter.O

1
@ Peter.O - Sadece Emacs'ı tanımayanlar için değil ... Emacs'ı 5 yıldan beri kullanıyorum ve farklılıkları açıklayamazdım. Sadece kullanıyorum.
Ürdün

11

Vim ile splitveya kullanabilirsiniz vsplit.

İlki yatay olarak bölünecek, ikincisi dikey olarak bölünecek.

CTRLw ardından bölünmüş ekranlarda gezinmek için.

Ayrıca sekme kullanabilirsiniz. tabnew filenamedosya adını yeni bir sekmede açacaktır. Sekmeler arasında gezinmek için tabnextve :tabpreviousdüğmelerini kullanabilirsiniz.

I personnaly sekmeler arasında gezinmek için sol ve sağ okları eşler:

map <right> :tabnext<CR>
map <left> :tabprevious<CR>
inoremap <right> <ESC>:tabnext<CR>a
inoremap <left> <ESC>:tabprevious<CR>a

1
Ek olarak, NERD_tree eklentisi, dizin ağacını ayrı bir bölmede göstermek için kullanılabilir. ( vim.org/scripts/script.php?script_id=1658 )
Bernhard

7

Kate

KDE Gelişmiş Metin Düzenleyicisi çok özellikli.
Sorunda tarif ettiğiniz her şeye ve çok daha fazlasına sahiptir .

Kendin için gör:

Ekran görüntüsü

Görünümü bölmek için GörünümGörünümü Böl seçeneğine gidin . Sonra aşağıdaki seçeneklerden birini seçebilirsiniz:

  • Dikey Böl ( Ctrl+ Shift+ L)
  • Yatay Yatay ( Ctrl+ Shift+ T)
  • Geçerli Görünümü Kapat ( Ctrl+ Shift+ R)

Bu ekran görüntüsündeki gibi bir düzen elde etmek için Dikey Bölünmüş , alt görünüme ve ardından Yatay Böl'e tıklayın .

Tabii ki, görüşlerin sınırları, aralarındaki sınırları (bölücüler) sürükleyerek değiştirilebilir. Görünümler arasında geçiş yapmak için, F8ve Shift+ tuşlarını kullanın F8.

Bu arada Kate'in VI Modu ( AyarlarKate'i Yapılandır…Düzenleme → VI Giriş Modu) vardır. Ardından, görüntü bölme kısayolları Vim'deki ile aynı olur ( bu cevaba bakınız ).


7

joe( Joe'nun Kendi Editör ) de bunu yapabilir:

ctrl+ ko- pencereyi yatay olarak bölme

ctrl+ kp- önceki pencereye geç

ctrl+ kn- bir sonraki pencereye geç

ctrl+ ke- geçerli pencerede yeni dosyayı aç

ctrl+ kg- mevcut pencerenin yüksekliğini artır

ctrl+ kt- mevcut pencerenin küçültme yüksekliği

ctrl+ ki- Geçerli pencere dışındaki tüm pencereleri gizle, tüm pencereleri tekrar göstermek için tekrar basın

ctrl+ cveya ctrl+ kx- pencereyi kapat




2

Dosya ağaçları konusunda şahsen NERDtree'yi Vim ile kullanıyorum. Patojen gerektirir. Ağacı ( :NERDtree toggle, iirc) açma komutunu biraz uzun buldum, bu yüzden yeniden gönderdim <F2>. Çok sayıda dizinde bulunan pek çok dosya içeren bir proje üzerinde çalışıyorsanız (Rails projelerini düşünün), gerçekten çok hoş.

DÜZENLE:

NERDtree Github'da: https://github.com/scrooloose/nerdtree

Bu benim .vimrc içinde kullandığım remapping: map <F2> :NERDTreeToggle<CR>


Teşekkürler, bu konuda başka sorularım olabilir. Başka zaman ayırdıklarım. ;)
Eve

1

Kullandığım tmuxve vimbunun için herhangi bir komut satırı tabanlı bir metin düzenleyicisi (örneğin kullanabilirsiniz olsa bir terminal tabanlı ortamda bölünmüş ekran düzenleme için nano, emacsvs.).

tmux"terminal multiplexer" kısaltmasıdır ve birden fazla terminal içeren, ayrı "pencerelerde" çalışan ve ayrıca bu pencerelerde "bölmeleri" olan ve ekranı bölmenize izin veren oturumlar oluşturmanıza olanak tanır. tmuxbirçok Linux ve BSD dağıtımının depolarına dahil edilmiştir. Bunu kodlama için en esnek seçenek olarak görüyorum, gitçünkü kod düzenlememle birlikte olduğu gibi kod derleyebildiğim ve sürüm kontrol sistemi kullanabildiğim uçbirimler içeren bölmeler ve pencereler de ekleyebiliyorum .

İşte tmuxve kullanarak nasıl bir bölünmüş ekran düzenleme oturumu yaratacağımın bir örneği vim.

İlk önce bir terminal aç. Aşağıda yazılan komutlar sonra $komut satırından verilir. Bu, içindeki varsayılan anahtar bağlantıları kullanır tmux.

  1. Yeni bir tmux oturumu başlat. İşte biz "kodlama" denilen bir tane yapmak:

    $ tmux new -s coding

    tmux az önce açıldı

  2. Basın Ctrl+ byoluyla takip %dikey bölünme veya "yatay bölünme.

    dikey bölme

    yatay bölme

  3. Siz (veya bölünmeler arasında hareket edebilir tmuxdeyişiyle, "bölmeleri") basarak Ctrl+ bizledi o.

  4. Şimdi, her bölmede düzenlemek istediğiniz dosyaları içeren bir metin düzenleyici açın. Burada vim, örneğin kullanarak iki metin dosyası açtım.

    $ vim file1.txt

    Anahtarları değiştirin: Ctrl+ bardından o.

    $ vim file2.txt

    iki dosyayı aynı anda düzenleme

tmuxSon derece gelişmiş, tek bir pencerede çeşitli şekillerde düzenlenmiş birden fazla bölme ve vimaynı anda birden fazla metin dosyasını sekmelerde açmanıza izin veriyor. Aynı anda düzenleme, sürüm kontrolü ve hata ayıklama kodunu düzenlememe izin vermek için hem sekmeyi hem de vimbölmeleri kullanma eğilimindeyim tmux. Klavye kısayollarını ve özelliklerini öğrenmek için yatırım yapmak için zamanınız varsa tmux, çok güçlü bir geliştirme ortamı olabilir.

Başlamaktmux için bir hile sayfası: dayid ekranı ve tmux cheat sheet

Sekmelerdeki bir öğretici vim: Vim ipuçları: Sekmeleri kullanma


0

Şahsen ekran veya tmux kullanırdım. Her ikisi de birden fazla panel açmanıza izin veriyor, ancak tmux'un çoklu panel oturumunu kurtarmada ekrandan daha iyi olduğunu düşünüyorum. Ayrıca, yerel masaüstü oturumunuzla ve ardından SSH ile bağlantınız kesilirse, oturuma ekleyebilme avantajını da elde edersiniz. İşbirliği için de oturumu diğer kullanıcılarla paylaşma olanağına bile sahipsiniz.


burada bir düşüş var çünkü vardiya kullanmıyorsunuz
peterh

0

Yanında vim, emacsve joeeditörler, burada aynı anda en az iki dosya gösterebilir (tty) / x-terminal emülatörü editörler terminali bazıları vardır. En şirin İsviçre ordu bıçakları olmayabilir, ancak öğrenme eğrisi hiçbir durumda çok dik görünmüyor:

1) mcedit

Midnight Commander'ın bir parçasıdır (bir metin modu dosya yöneticisi, bunu apt-get install mcDebian tabanlı dağıtımlarla kurun ).

mcedit

2) wpe \ xwpe

İle Temin apt-get install xwpeDedbian dağıtımlardan. Ancak, durmuş bir koruma gibi görünüyor.

xwpe

3) nfte \ efte

eFTE'den de erişilebilir apt-get install efte.

efte

Öte yandan, X-window için bu amaçla yararlı olabilecek bazı GUI "diff" araçları da var. Linux Nane'imde en az iki tane var:

4) xxdiff

Qt tabanlı bir uygulama ( apt-get install xxdiff)

xxdiff

Test edilmedi ve gösterilmedi, ancak FldiffHızlı Işık Araç Takımı (FLTK) kullanılarak da var ancak kısmen ilham verdi xxdiff. Ayrıca resmi depolarda ( apt-get install fldiffve kendiniz test edebilirsiniz). Aynısı için de geçerlidir mgdiff.

5) kdiff3

Benzer bir KDE uygulaması ( apt-get install kdiff3).

KDiff3


0

Github'un atom metin editörünü kullanabilirsiniz. Bölünmüş ekran işlevselliği ile birlikte geliyor.

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.