Przejdź do głównej zawartości

Posty

Wyświetlanie postów z maj, 2017

Tworzenie wtyczek do Visual Studio — podsumowanie na koniec konkursu

Właśnie stuknął 20. wpis w konkursie Daj Się Poznać 2017, zatem przyszedł czas na podsumowanie prac na koniec trwania trzymiesięcznych zmagań...StatystycznieW tym czasie wpisy miały sumarycznie prawie 42 tysiące wyświetleń. Najbardziej obleganym wpisem był ten o hakowaniu Visual Studio, czyli o dobieraniu się bezpośrednio do poszczególnych elementów UI poprzez Snoopa. Niemalże identyczną ilość wyświetleń ma wpis odnośnie aplikacji (i nie tylko) wspomagających zdrową pracę przy komputerze: Zdrowe ciało, zdrowy duch, zdrowy programista — przegląd aplikacji. Oczywiście wszystkie wpisy dostępne są pod linkiem grupującym moje artykuły.Projekt - Healthy With VSGłównym celem prac konkursowych było stworzenie dodatku do Visual Studio, który wspomagałby czas pracy i dbał jednocześnie o zdrowie programisty. Finalnie udało się stworzyć plugin, który implementuje timer Pomodoro w pasku statusu IDE. Dodatkowo można ustawić, aby na koniec pracy ekran(y) były blokowane przez plansze przedstawiają…

Bad Word Detector — własna wtyczka do detekcji wulgaryzmów w Visual Studio

Tworząc w IDE zapewne nieraz natknęliście się na kod źródłowy, który zawierał wulgaryzmy czy to w postaci komentarza, czy to w postaci nazw zmiennych. Również my sami lubimy wstawić gdzieś w kodzie "kupę" lub inny równie ciekawy zwrot.Niestety czasem takie "kwiatki" wychodzą na produkcję i nie są może czymś karygodnym lub niebezpiecznym, ale wizerunkowo raczej nikt na tym nie zyskuje. Ostatnio pisał Niebezpiecznik chociażby o "fakach" na stronce OKEa kilka dni wcześniej podobnie "wpadł" Citibank.Tworząc na konkurs wtyczkę Healthy With VS wpadłem na pomysł, aby stworzyć dodatek do Visual Studio, który mógłby zaradzić takim problemom. Bad Word Detector, bo tak nazwałem ten nano-projekt, wykrywa wulgaryzmy w kodzie źródłowym edytora i je zaznacza. Obecnie jest to dopiero pierwsza wersja, ale mimo to już może być przydatna.Lista wulgaryzmów obecnie ograniczona jest do języka angielskiego, ale w przyszłości będzie rozszerzona o inne języki, w tym …

Zapisywanie zdarzeń z wtyczki do Visual Studio w Activity Logu

Dzisiejszy wpis odnośnie tworzenia wtyczki do Visual Studio będzie bardzo szybki i konkretny. W każdej aplikacji przychodzi moment na to, aby zalogować do pliku jakieś zdarzenie. Może być to notka o wyłapanym wyjątku, bądź też tylko zapis czysto informacyjny.Zapis w Activity LogDodatki do IDE od Microsoftu mogą zapisywać zdarzenia do Activity Loga. W celu umieszczenia własnego wpisu należy pobrać serwis o typie SVsActivityLog i rzutować go na interfejs IVsActivityLog: var log = serviceProvider.GetService(typeof(SVsActivityLog)) as IVsActivityLog; gdzie serviceProvider jest obiektem dziedziczącym po IServiceProvider (w naszym przypadku jest to obiekt klasy Package ).Logowanie odbywa się przy pomocy metody LogEntry : log.LogEntry((UInt32)__ACTIVITYLOG_ENTRYTYPE.ALE_ERROR, pluginName, message); Pierwszy parametr określa poziom logowania - jest nim enumerator __ACTIVITYLOG_ENTRYTYPE i posiada od trzy wartości: błąd (ALE_ERROR), ostrzeżenie (ALE_WARNING) i informacja (AL…

Windows Template Studio — szybki start w programowaniu aplikacji Universal Windows Platform

Osoby programujące z Universal Windows Platform dostały właśnie świetny dodatek do Visual Studio 2017 - Windows Template Studio. Prosty kreator od Microsoftu, który stworzy podstawy projektu UWP z wybranym funkcjonalnościami, zgodnie z dobrymi praktykami programowania.Windows Template StudioDodatek do VS2017 jest prostym kreatorem, bardzo pomocnym przy rozpoczynaniu tworzenia nowej aplikacji UWP. Kreator pozwoli deweloperom na wybranie typu projektu, frameworku MVVM, stowrzeniu podstawowych stron i ficzerów. W ten sposób stworzony zostanie gotowy szablon dla dewelopera, który zawiera wybrane elementy, z zainicjalizowanymi strukturami zgodnie z dobrymi praktykami. Programista na starcie otrzyma zatem bazę do rozwoju własnej aplikacji. Wystarczy już tylko usiąść i zacząć pracę.Windows Template Studio jest rozwinięciem pomysłu Windows App Studio, które pozwalało na "wyklikanie" aplikacji UWP online. Windows Template Studio jest zaś kreatorem, który tworzy dla dewelopera bazę do…

Migracja starej wtyczki do nowej wersji Visual Studio 2017

Tworząc dodatek do Visual Studio zapewne wiele osób będzie uczyło się poprzez analizę kodu istniejących już dodatków (chociażby ze źródeł na GitHubie od MS ). Okazuje się jednak, że projekty pluginów stworzonych pod stare IDE zupełnie nie chcą kompilować się w nowej odsłonie Visual Studio. Jesteśmy zmuszeni do ręcznej migracji takich dodatków. Oto poradnik jak tego dokonać.Automatyczna aktualizacji (standardowa)Otwierając projekt, który został stworzony w starym IDE, w nowym Visual Studio 2017 dostaniemy standardowy komunikat o automatycznej aktualizacji.Nie mamy wyjścia i godzimy się na to. Po chwili projekt jest już gotowy na działanie w nowej wersji IDE. Niestety próba builda zakończy się niepowodzeniem.W tym momencie musimy sami przejść przez kluczowe elementy projektu, aby zaktualizować ręcznie dodatek.Nowe paczki z NuGetaZaczniemy migrację o pobrania nowych paczek z NuGeta.Na zakładce aktualizujemy dostępne nowe składniki i restartujemy IDE, jeśli jest to wymagane.Aktualizacja v…

Umieszczamy własną wtyczkę do Visual Studio w Markecie

Nareszcie udało mi się znaleźć chwilę wolnego po tym całym ślubnym zamieszaniu ;) Wtyczka do Visual Studio monitorująca czas i zdrowie dewelopera już coś zaczyna sobą reprezentować. Postanowiłem zatem dodać rozszerzenie do marketu, aby każdy mógł zainstalować ją w swoim IDE i zgłosić wszelakie błędy i uwagi. W tym poradniku przedstawię sposób na umieszczenie wtyczki do Visual Studio w Markecie.Przygotowanie pliku manifestPrzygodę zaczynamy od otworzenia pliku source.extension.vsixmanifest . To w nim znajdują się szczegóły, które będą wyświetlane na ekranie dodatku w markecie. Na pierwszej zakładce Metadata można uzupełnić opis, domyślną ikonę czy tagi.Kolejna, Install Targets , opisuje jakie wersję Visual Studio będą wspierane. Podajemy tutaj nie tylko wersję numeryczną, ale również wersję funkcjonalną. W moim przypadku są to wydania Visual Studio Community, Pro i Enterprise w wersjach 2015 i wyższe.W oknie Dependencies można określić jakie zależności i w jakich wersjach są wym…