Chcę móc łatwo uruchomić Vima w trybie prywatnym. Zdefiniujmy tryb prywatny jako taki, który wykorzystuje ten zestaw poleceń:
set history=0
set nobackup
set nomodeline
set noshelltemp
set noswapfile
set noundofile
set nowritebackup
set secure
set viminfo=""
Daj mi znać, jeśli możesz wymyślić jakieś dodatkowe polecenia odpowiednie dla trybu prywatnego.
Chodzi o to, że nie mogę wymyślić żadnego krótkiego i łatwego sposobu na rozpoczęcie Vima z tą konfiguracją.
Oto kilka pomysłów, które wpadłem na pomysł:
Załaduj .vimrcprivate zamiast .vimrc
Możesz po prostu umieścić wszystkie niezbędne polecenia w .vimrcprivate i uruchomić Vima w następujący sposób:
vim -u .vimrcprivate
Zdefiniuj i wywołaj
Private()
funkcjęKolejny pomysł dodaj taki kod do swojego .vimrc:
function Private() " set of commands here endfunction
i wtedy możesz uruchomić Vima w trybie prywatnym, takim jak ten:
vim -c 'call Private()'
Użyj zmiennej, aby uruchomić konfigurację swoich poleceń
Jest dość podobny do drugiego rozwiązania. Poprostu dodaj
if exists('privatemode') " set of commands here endif
do twojego .vimrc, a następnie uruchom Vima używając
vim -c 'let privatemode=1'
który nie jest ani mądry, ani krótki.
Dodaj alias do pliku .bashrc (lub dowolnego innego pliku. * Rc używanego przez powłokę)
Na przykład:
alias vimprivate="vim +\"set history=0\" +\"set nobackup\" +\"set nomodeline\"\ +\"set noshelltemp\" +\"set noswapfile\" +\"set noundofile\"\ +\"set nowritebackup\" +\"set secure\" +\"set viminfo=\"\"\""
co jest okropne. Nie podoba mi się
Użyj zmiennej środowiskowej
Po prostu uruchom
VIM_PRIVATE=1 vim
i dodajif $VIM_PRIVATE " set of commands here endif
do twojego .vimrc.
Trochę magii (z komentarza Carpetsmoker w tym wątku )
Carpetsmoker mówi w tym komentarzu, że
Nie polecałbym używania osobnego pliku vimrc, z prostego powodu, że tak łatwo go zapomnieć. Coś takiego jak ten autocmd:
au BufRead * if &cryptmethod != "" | setlocal nobackup noundofile ... | endif
powinien zrobić dla ciebie magię i nie można tego zapomnieć.Jednak nie mam pojęcia jak to działa magia jeszcze .
Masz jakiś pomysł?
Rozwiązaniem idealnym byłoby vim -private
albo vim +Private
jednakże:
- Jestem pewien, że nie możesz dodać własnych niestandardowych opcji wiersza poleceń, takich jak
-private
. - jeśli chodzi o
+Private
to, nie mogłem go znaleźć w Internecie.
vim -Nu .vimrcprivate
.
alias vimprivate='vim -u .vimrcprivate'
itd.
v:progname == "vimp"
i, jeśli to prawda, wykonanie ustawień trybu prywatnego. Zobaczyć :help v:progname
.
command! Private set history=0 nobackup secure ...
a następnie wywołać je z powłoki za pomocąvim +'Private'
. Jeśli chodzi o ostatnią komendę, o której wspomniałeś, podczas odczytywania bufora sprawdza się, czy wartość'cryptmethod'
opcji, czy'cm'
w przypadku krótkiej wersji, nie jest pusta. Ta opcja kontroluje metodę szyfrowania używaną do szyfrowania bufora, gdy jest on zapisywany do pliku za pomocą polecenia Ex:X
. Jeśli opcja nie jest pusta, wówczas automatyczne polecenie konfiguruje różne opcje.