Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Visual Studio Code - rozszerzenia
#11
Aktualizacja 0.0.5:
- dodałem uzupełnienie ścieżek do plików w xml. Aktywuje się po naciśnięciu " i spełnieniu warunków.
- poprawiłem SignatureHelp. Teraz działa jak jest funkcja w funkcji, ale wymaga jeszcze dopracowania.
Reply
#12
Wiem że trochę późno odpowiadam, ale prawdopodobnie node.js jest wymagany dla rozszerzenia Gothic Online Supports (tak się składa, że zacząłem się niedawno trochę bawić node'em i zauważyłem przy okazji, że rozszerzenie już działa Wink)

@edit:

Swoją drogą, ta obramówka kolorowa do funkcji printujących wiadomość (przynajmniej tych defaultowych dostarczanych przez g2o) naprawdę miłe udogodnienie.
Reply
#13
Czyli tak jak pisałem. Dodam nodejs do wymagań wtyczki.

Jakbyś miał jakieś pomysły na inne udogodnienia, to chętnie wysłucham.
Reply
#14
Na inne udogodnienia nie mam póki co pomysłów, jeszcze sprawdzę czy aby na pewno node.js jest wymagany na czystym środowisku.

Zastanawiam się ogólnie, jak trudno byłoby dodać rozszerzenie do debugowania squirrela. Wsparcie debuggera interaktywnego byłoby bardzo ciekawe i odziwo sam squirrel ułatwia wprowadzenie tej funkcjonalności, ale byłoby przy tym trochę pracy.

W sumie to jest mała rzecz którą mógłbyś dodać. O ile dobrze widzę, to rozszerzenie lintera wykorzystuje plik binarny skompilowany pod platformę windows.
Nie ma w tym nic złego, większość z nas korzysta z windowsa, ale co np: z linuxem? To już bardziej pytanie z ciekawości zadawane, ale jeśli dobrze rozumiem, to w chwili obecnej linter będzie działać tylko pod windowsem, mam rację? Jeśli tak, mógłbyś dodać wsparcie dla linuxa jeszcze, nie powinno to być trudne Big Grin (jest jeszcze MacOS, ale nigdy nic nie robiłem na tej platformie więc nie wiem jak wygląda tam architektura plików binarnych, ale na pewno ktoś mógłby chcieć rozwijać g2o pod Linuxem, więc linter byłoby sporym udogodnieniem dla takiej osoby).

@edit
Dobrze też by było dodać wzmiankę na vsc:marketplace/Readme.md, na których platformach linter będzie działać.

@edit2:
Jeśli chcesz, mogę spróbować zrobić MR'a na repo na bitbucketcie z dodaniem binarki dla linuxa + wsparcia dla vs:c
Reply
#15
Tak działa dokładnie z binarki od https://github.com/mabako/squirrel-compiler/releases i wersji v1.0.1-squirrel3.1 bo z tymi nowszymi coś mi nie grało.

Można dodać wsparcie dla linuxa, ale nie bardzo mam na to czas bo musiałabym stawiać wirtualną maszynę. Nie wiem też czy temp-write działa na linuxie.

Jak masz chęć to próbuj.

Przy debugerze jest trochę roboty. Co masz na myśli "squirrel ułatwia wprowadzenie tej funkcjonalności"?
Reply
#16
Jest specjalny callback, który informuje o tym, co w danej chwili się dzieje.
Trochę czytałem o tworzeniu wsparcia dla innych debuggerów dla VS:C, da się to zrobić, ale wymagałoby to trochę przemyślenia kilku problemów i ogarnięciu jak to wszystko ma działać.

Squirrel Script
  1. setdebughook(function(event_type, sourcename, line, funcname)
  2. {
  3. // event_types:
  4. // 'c' -> call
  5. // 'l' -> line
  6. // 'r' -> return
  7.  
  8. print(event_type.tochar()+" "+sourcename+" "+line+" "+funcname)
  9. })
  10.  
  11. function one()
  12. {
  13. return 1 + 1
  14. }
  15.  
  16. addEventHandler("onInit", function()
  17. {
  18. local x = one()
  19. })



Dzięki temu można sobie w skryptach zrobić pseudo break-pointy itp. Ten callback również można zbindować w cpp, ale no, dalej są problemy typu: jak wymusić przez serwer ładowanie libki, która by taki callback implementowała? Jest to skomplikowane, ale dałoby się to ogarnąć.

@edit:
Kiedyś znalazłem dość ciekawy dokument z 2009 roku na temat squirrela (może komuś się przyda):
http://cedec.cesa.or.jp/2009/ssn_archive...d/PG82.pdf
Reply
#17
Parę wersji minąłem ale były głównie poprawki w działaniu SignatureHelp i hover
Aktualizacja 0.0.8:
- aktualizacja do Gothic 2 Online (0.1.8)
- optymalizacja kodu
- uzupełnianie eventów w funkcji addEventHandler
Reply
#18
Nie wiem dlaczego, ale w momencie gdy mam włączone rozszerzenie Squirrel Language Linter, to VS Code reportuje mi problemy w plikach xml  na samym początku.
"Expression expected", poniżej zamieszczam ss:

[Image: zgkPJ36.jpg]

Jest to trochę dziwne, bo wtyczka w żaden sposób nie odnosi się do rozszerzeń plików .xml.
Podejrzewam że linter powoduje takie problemy, ponieważ po jego wyłączeniu problem znika.
Reply
#19
Dzięki, naprawiłem. Teraz będzie działać tylko jak plik ma rozszerzenie '.nut'
Reply
#20
Aktualizacja 0.0.9:
-w pasku statusu wyświetla się teraz (obok nazwy języka programowania) czy plik jest po stronie serwera czy clienta. Działa na razie w prosty sposób tak samo jak przy auto uzupełnianiu że sprawdza czy w ścieżce do pliku jest nazwa server-scripts lub client-scripts. Później chce to rozwinąć i dodać sprawdzanie po pliku xml.
- dodałem ustawienia wtyczki File>Preferences>Settings>Extensions>Gothic Online Supports. Przydatne jak któraś z funkcji nie działa poprawnie(może zwieszać całe rozszerzenie), zamula komputer lub nam się nie podoba. (Po zmianie wymagany restart VSCode).
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)