Co nowego w edytorze tekstu Atom na GitHubie

Atom, edytor tekstu opracowany przez GitHub Atom i zbudowany w oparciu o platformę Electron, został zaktualizowany o ulepszenia skupione na pakowaniu GitHub, a także możliwościach języka Python i HTML. Nowa wersja beta jest w drodze.

Skąd pobrać Atom

Możesz pobrać Atom ze strony projektu.

Następna wersja: Nowe funkcje w Atom 1.26 beta

Możliwości planowane dla Atom 1.26 beta, dostępne w kanale Atom beta, obejmują:

  • Panel Git pakietu GitHub zawiera listę ostatnich zatwierdzeń, która ma służyć jako szybkie odniesienie.
  • W oknie dialogowym uwierzytelniania Git znajduje się pole wyboru Zapamiętaj służące do przechowywania nazwy użytkownika i hasła.
  • Obserwatorzy systemu plików powrócą teraz do odpytywania, jeśli system operacyjny nie będzie mógł obserwować zdarzeń.
  • Dodano eksperymentalny system plików, aby zmniejszyć zużycie zasobów i zapewnić większą skalowalność podczas przeglądania wielu katalogów.
  • Podczas kodowania z funkcją współdzielenia przestrzeni roboczej Teletype programiści mogą korzystać z funkcji Fuzzy Finder, aby szybko otworzyć plik udostępniony przez hosta.

Aktualna wersja: Co nowego w GitHub 1.25

Wydany na stabilnym kanale edytora, który można zhakować 15 marca 2018 r., Oto ulepszenia w najnowszej wersji:

  • Pakiet GitHub edytora umożliwia programistom przygotowywanie i przeglądanie zmian dotyczących zarówno trybu plików, jak i dowiązań symbolicznych.
  • Nowe ustawienie konfiguracyjne kontroluje, czy komunikaty o zatwierdzeniach utworzone w minedytorze są trwale zawijane do 72 kolumn.
  • Wiadomości utworzone w pełnoekranowym edytorze są zachowywane bez zmian.
  • Tryb porównywania pakietu GitHub nie resetuje już pozycji przewijania, gdy użytkownik tego nie chce.
  • Podczas edytowania źródła Pythona tokenizer cofa funkcje asynchroniczne, ciągi binarne, adnotacje funkcji, ciągi f i formatowanie ciągów. W przypadku dokumentów HTML styleatrybuty Atom 1.25 są teraz tokenizowane jako CSS.
  • Do podświetlania składni i składania kodu, w wersji beta dostępny jest przyrostowy system analizy składni, zwany zastępowaniem drzewa. Tree-sitter to biblioteka C używana przez powiązania z językami wyższego poziomu. Funkcja opieki nad drzewem jest obecnie domyślnie wyłączona, ale można ją włączyć za pomocą ustawienia analizatorów drzewa użytkowników.

W toku: Atom staje się pełnoprawnym IDE

Atom jest wyposażany w możliwości podobne do IDE, jako prekursor do uczynienia edytora pełnoprawnym IDE.

Pierwszym krokiem w przejściu Atom z edytora tekstu do IDE jest opcjonalny pakiet funkcji opracowany z Facebookiem o nazwie Atom-IDE, wydany we wrześniu 2017 r.

Pakiet zawiera:

  • inteligentniejsze autouzupełnianie uwzględniające kontekst
  • widok konspektu
  • go to definicja
  • możliwość znalezienia wszystkich referencji
  • najedź, aby ujawnić informacje
  • ostrzeżenia (diagnostyka)
  • formatowanie dokumentów

Pierwsza wersja zawiera pakiety dla TypeScript, Flow, JavaScript, C # i PHP. Te pakiety używają serwerów językowych do analizowania kodu i projektów. W ten sposób GitHub dołącza do innych firm, takich jak Microsoft i Red Hat, które obsługują protokół serwera językowego. Wsparcie będzie prawdopodobnie późniejsze dla Rust, Go i Python.

GitHub mówi, że jeśli istnieje serwer językowy dla języka, programiści mogą łatwo utworzyć własny pakiet Atom-IDE, który korzysta z tego przy użyciu biblioteki NPM klienta języka Atom. Zapewnia to wspólne automatyczne łączenie z głównymi funkcjami, a także narzędzia pomocnicze, takie jak pobieranie plików pomocniczych i konwersji.

Aby rozpocząć korzystanie z Atom-IDE, programiści muszą otworzyć okno dialogowe Instaluj pakiet Atom, a następnie wyszukać i zainstalować pakiet atom-ide-ui, aby aktywować interfejs użytkownika IDE i zainstalować wymaganą obsługę języków, na przykład ide-typescript, ide- flowtype, ide-csharp, ide-java i ide-php.

Funkcje dodane w poprzednich wersjach

Atom 1,20

Aby ulepszyć integrację z Git w wersji 1.20, widoki różnic zostały przerobione, aby zapewnić obsługę oczekujących okienek i wiele jednoczesnych widoków. Ponadto użytkownicy mogą teraz tworzyć komunikaty o zatwierdzeniach w głównym edytorze - „dla tych, którzy nie są w całości zwięzłości”, zgodnie z dokumentacją.

Atom 1.20 zawiera również poprawki gramatyki PHP. Aby ulepszyć możliwości znajdowania i zamieniania, wiersze kontekstu w wersji 1.20 są opcjonalnie wyświetlane z wynikami „Znajdź w projekcie”. Użytkownicy mogą ustawić liczbę dostępnych wierszy przed i po dopasowaniach w ustawieniach pakietu i mogą modyfikować wyświetlanie w tekście podczas przeglądania wyników.

Atom 1.19

W wersji Atom 1.19 natywny bufor tekstowy C ++ zwiększa szybkość reakcji i zużycie pamięci. Zapisywanie pliku odbywa się asynchronicznie bez blokowania interfejsu użytkownika. Ponadto duże pliki zajmują teraz mniej pamięci.

Warstwa interakcji DOM została przepisana, aby poprawić wydajność i uprościć kod. Przepisana warstwa wykorzystuje nowe funkcje przeglądarki i możliwości wirtualnego DOM. Przepisanie miało również na celu uwzględnienie interfejsów API, w tym granic zawierania CSS, w celu ograniczenia zakresu stylów i układu przeglądarki oraz obserwatorów zmiany rozmiaru, które powiadamiają o zmianie rozmiaru prostokąta zawartości elementu.

Atom 1.17

W wydaniu 1.17 Atom wprowadzono nowy komponent interfejsu użytkownika o nazwie „doki”, który jest sposobem na zapewnienie bocznych lub dolnych paneli narzędzi w edytorze. IDE, takie jak Visual Studio i Eclipse, od jakiegoś czasu mają komponenty podobne do dock, ale teraz Atom dodaje taki komponent jako element core.

Programiści Atom mogą skorzystać z wysokopoziomowego API do manipulowania dokami, dzięki czemu „panele narzędzi napisane przez różnych autorów pakietów [mogą] spójnie współdzielić powierzchnię ekranu”, zgodnie z zapowiedzią na blogu GitHub.

Jednym z pierwszych dodatków używających metafory dokowania jest GitHub w wersji beta dla Atom. Dzięki niemu programista może używać panelu bocznego w dowolnym bieżącym widoku do wprowadzania zmian, tworzenia zatwierdzeń, pracy z różnymi gałęziami kodu i rozwiązywania konfliktów scalania.