2009-01-20 9 views
7

Czy istnieje narzędzie do automatycznego formatowania dla vi, które pozwoli mi zdefiniować preferencje językowe?Automatyczne formatowanie dla vi?

edycja: Nie szukam podświetlania składni. Szukam czegoś, co zastosuje reguły formatowania do mojego kodu. (Podobnie jak pozycjonowanie nawiasów, odstępy między oepratorami, itp.)

Odpowiedz

8

Cóż, jest Vim, który jest już dostępny w wielu językach i który można łatwo dostosować w zależności od języka.

1

Jak mówi Darrin, "uciekajcie z vi nieużytków" i zamiast tego objeżdżajcie jedyną prawdziwą ścieżkę vim! Twoje preferencje językowe, zakładając, że nie są przeznaczone dla SNOBOL lub Simula, będą Ci wdzięczne!

Edytuj: Faktycznie rozszerzenie podświetlania składni na SNOBOL lub Simula nie byłoby takie trudne! (-:

2

Można użyć vim Jeśli jesteś na GNU/Linux, spójrz na/etc.../vim/vimrc globalnych ustawień domyślnych. Niektóre rzeczy, które warto to „Składnia na” „filetype tiret oN” i „set showmatch”.

3

Możesz dodać plik w ~/.vim/ftplugin/ dla każdego typu pliku. na przykład ustawić ~/.vim/ftplugin/c.vim do

set tabstop=2 shiftwidth=2 

To ustawia wcięcie dla plików C do dwóch spacji.

+0

Znalazłem domyślne wcięcie, gdy automatyczne formatowanie ruby ​​w vim jest zbyt duże, co pomogło ustawić wcięcie. Dodałem to do mojego pliku ~/.vimrc wraz z konfiguracją z tego pytania: http://stackoverflow.com/questions/3785628/format-ruby-code-in-vim – axk

2

Istnieje wtyczka vim, która umożliwia formatowanie kodu z poziomu vima. To się nazywa vim-autoformat i można go dowload tutaj:

https://github.com/Chiel92/vim-autoformat

Integruje zewnętrznych programów do formatowania kodu-vim. Na przykład, jeśli chcesz sformatować kod C, C++, C# lub Java, możesz zainstalować program astyle, a vim automatycznie ustawi go jako program formatujący.