Pencere, bölme ve arabellek düzeni nasıl kaydedilir?


56

Tek bir depoda üzerinde çalıştığım birkaç görevim var. Üzerinde çalışmak için "çalışma alanları" oluşturmak istiyorum.

Bir "Çalışma alanı" veya "tampon düzeni" (kullanarak İstediğim düzende açık üzerinde çalışmak için gereken tüm dosyaları olurdu ^w+v, ^w+spencere bölmek).

Ardından, başka bir görev üzerinde çalışmaya başladığımda, mevcut düzenimi kaydetmek istiyorum, bir diğerine geçin, ancak önceki düzenlere geri dönmek istiyorum.

Bunu başarmanın en iyi yolu nedir?

Yanıtlar:


48

Vim'i kullanabilir :mksessionve her "çalışma alanını" farklı bir dosyaya yazabilir, ardından bir oturumu yeniden vim -S session_fileaçabilirsiniz, ancak, eğer bir eklenti kullanmaya açıksanız, Startify eklentisinin bu tür bir senaryo için tam olarak ihtiyacım olanı bulduğum: https : //github.com/mhinz/vim-startify

Vim ve mccvim'de oturumları yönetme konusunda harika bir iş çıkarır ve vim açtığınızda da son dosyaların bir listesini verir. Sizin için de doğru çalışma dizinine otomatik olarak geçecektir. Ayrıca sağlayan pin gibi şeyler kolay erişim için güzel yanı startify açılış ekranına dosyaları sizin.vimrc


23

Oturumları kolayca yönetmek için tpope'nin vim-obsession eklentisini kullanabilirsiniz. Bu, Vim'in yerleşik bir sargısı gibidir mksession, ancak başka bir dizi güzelliği de sağlar.

Geçerli oturumu (veya tampon düzenini) komutu vererek kaydedebilirsiniz :Obsess. Bir argüman sağlamazsanız, Session.vimvarsayılan olarak adlandırılan bir oturum dosyası yazar .

Bir oturumu yeniden yüklemek için kullanın vim -S <session-name>veya :source <session-name>Vim'in içindeyseniz kullanın .

İşin güzel yanı, Vim'den her çıktığınızda oturumu kaydetmeyi hatırlamanıza gerek kalmaması. Eklenti tarafından otomatik olarak yönetilir.

Vim-obession'ın diğer bir önemli özelliği, seçenekleri ve haritaları kaydetmemesidir. mksessionSadece tampon düzenini kaydetmek istiyorsanız, olmasını istemediğiniz mevcut seçenekleri ve haritaları yakalar. Ayrıca, bir eklenti güncellendiğinde vb.


Birden fazla oturum dosyasını yönetebilir mi?
Nebril

1
@Nebril Olabilir. Oturumu kaydettiğinizde formatı kullanın :Obsess <session-name>. Yeniden yüklerken istediğiniz oturum adını kullanın.
thameera

Obsession'ın dikey bölünmeleri hatırlamadığını, mksession'ın hatırladığını buldum. Sadece bu akşam bununla uğraşıyorum, özlediğim bir şey mi var?
baxx 0

1
@baxx Obsession, her çeşit bölmeyi hatırlar. Belki vim'i bırakmadan önce bölmeyi kapattın?
thameera

2
@baxx Bu eski ama başkalarına yardım etmesi durumunda bir not eklemek istedim. Takıntıları unutmak gibi gözüküyor olmasının nedeni, büyük olasılıkla vim bırakmak için bütün bölmelerinizi bırakmanızdır. Bu, son durumun vim'i kapattığınız son pencereniz olduğu anlamına gelir, takıntı budur. Sekmelerde de aynı problem vardı ve cevabı kullanmak: qa tüm açık pencerelerden, bölmelerden, sekmelerden çıkmak için. Birisinin daha iyi bir seçeneği varsa, lütfen bize bildirin.
TC0072

12

Bir ek not olarak, merkezileştirilmiş bir depoda vim oturumlarını oluşturmayı ve yönetmeyi daha da geliştiren tpope / vim-obsession'ın bir uzantısı olarak başka bir dhruvasagar / vim-prosession eklentisi yaptığımı belirtmek isterim . Dizine göre yapılandırma başına ve dizini herhangi bir argüman olmadan vim başlattığınızda otomatik olarak yükler. Ayrıca kolaylık sağlamak için farklı oturumlar arasında geçiş yapmanızı sağlar.


Bu harika geliyor. Projelerimin, aklımı başımdan alabilecek takas dosyaları ile darmadağın olmasını önlemek için geri alma ve yedekleme dosyalarına benzer bir klasördeki oturum dosyalarını yönetebilseydim.
dragon788

1

Vim-workspace eklentisini deneyebilirsiniz, oturum yönetimi özellikleri otomatiktir, mevcut çalışma dizininiz için kapsamlıdır ve oldukça basittir (yalnızca bir ToggleWorkspacekez çalıştırmanız gerekir ).

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.