Jak mogę otworzyć bieżący plik HTML w przeglądarce internetowej MacVim?

6

Czy w MacVimie jest polecenie otwarcia aktualnie edytowanego pliku HTML w przeglądarce internetowej?

Florent2
źródło

Odpowiedzi:

15

Aby to zrobić tylko raz, możesz

:!open %

która wywoła polecenie powłoki openze ścieżką do bieżącego pliku jako argument. Sam nie używam Maca, ale openwydaje mi się odpowiedni. Jeśli nie, zamień na dowolny program, w którym chcesz otworzyć plik.

Oczywiście możesz powiązać klucz, jeśli będziesz go często potrzebował:

:map <silent> <F5> :!open %<CR>

A ty może chcesz

:set nowarn

aby ukryć ostrzeżenia o niezapisanych zmianach plików.

Widzieć:

  • :help :!
  • :help cmdline-special
  • :help 'warn'

Zauważ, że możesz zostać dowolnie wyrafinowany dzięki skryptom Vima. Na przykład ta funkcja pozwala wyświetlić bieżące niezapisane zmiany przy użyciu pliku pośredniego:

function! BrowserPreview()
    if &modified
        let tmpfile = tempname()
        execute "silent write " . tmpfile
        call system("firefox " . shellescape(tmpfile))
        if delete(tmpfile) != 0
            echoerr "could not remove " . tmpfile
        endif
    else
        call system("firefox " . shellescape(expand("%:p")))
    endif
endfunction

map <silent> <F5> :call BrowserPreview()<CR>

(Wymień oba wystąpienia firefoxze openjeśli który pracował wcześniej).

peth
źródło
Tylko upewnij się, że w nazwach plików nie ma spacji. W przeciwnym razie vim próbuje otworzyć każde słowo rozdzielone spacjami jako własną stronę. Moim zdaniem jest to dość denerwujące.
dylnmc,
0

:w | !xdg-open %

dla mnie pod Ubuntu otwiera przeglądarkę Opera

Eugen Jinga
źródło
Czy potrafisz wyjaśnić składnię tego polecenia i czym różni się on od przyjętej odpowiedzi?
Scott
Otworzyłem chrome ze składnią powyżej thks
Eugen Jinga