Pull to refresh
92
0
Валерий Семенчук @VISTALL

Пользователь

Send message
Поддержу свои слова

Mono

вот

Microsoft исходники этого дебагера открыты
Mono дебагер — это аналог с явы. Для microsoft — есть исходники дебагера на шарпе, нужно будет просто переписать с CommandLine -> transport передачу даных

Никто не говорит что все будет сразу. Вы правы, что зависит от рук. Чем больше рук тем быстрей будет.
Много претензий к реализации.
Вообще — да. Но моих рук мало, поэтому не скоро будет
Пока что — это среднее. Много проблем. Сейчас можно сказать — что это фундамент.
1. Unity это одна из целей. Я уже расмотрел СДК и имею уже планы по реализации плагина. Главное это допилить поддержку Шарпа.

2. Для меня — нет. У меня все мои проекты уже в Consulo, IDEA я уже не использую. Пока приоритет это плагин.НЕТ + платформа.

(угу я знаю всю картину)
Вот и вопрос — да или нет. Ктото считает что нет. Я показал, что для меня это не миф. Я попросту пока не успеваю сделать все, а хочется :)
Возможно все — нужно желания, и время. Пока я хочу закончить с .Net + C#, потом уже выбор
Я это знаю, но я сторонник IntelliJ платформы, или exIntelliJ(долго обьяснять). А F4 — eclipse-based.

Их минус — никто не поддерживает .NET. Это печально. Но поправимо.
Спасибо за пост. Я с fan познакомился недавно, но опечалило одно — IDE для него. Что то умней Клипсы мне нужно.

Был плагин fan4idea, но он старый. Его можно конечно поднять к IDEA 13, но ограничения — только Java + JS, меня это огорчает.
Ах да что я забыл — я незнаю наскок реально, но как вариант я думаю лучше использовать com.intellij.psi.impl.source.resolve.reference.impl.providers.FileReferenceSet для поиска по файловой системе
Такс, после детального просмотра — есть замечания.

Тот resolving к файлу который у вас всегда создается в RequirejsPsiReferenceProvider, нужно вынести в отдельный manager.

В нем не использовать настолько прямое хранения ссылки к VirtualFIle, потом что файл может быть удален, и будет AssertError.

Мы используем com.intellij.psi.util.CachedValuesManager#createCachedValue

Ко второму — не используем Static переменные, делаем ApplicationService.

Если чтото ещё будет, я напишу
Я откоментрировал пару строк. По мелочам. Будет время форкнуть плагин, опишу поправки свои — если они будут. Только форк уже в Идеи не получится потестить)
Автор) Я тебе подкину тоже веселый пример.

public class GenericTest
{
	public static void main(String[] args)
	{
		Map<Integer, Long> v = new HashMap<Integer, Long>();
		v.put(1, 0L);

		Long val = v.isEmpty() ? 0 : v.get(2);

		System.out.println(val);
	}
}


Могу сказать код скомпилится на все JDK, и не выполнится на любой(тестил 6-7-8, мб и где то пофиксили но я не видел)
Немного моей истории про Форки. Тут было сказано что коммиты не засчитываются в Fork репозитарии. Это верно.

Но бывает это неудобно, когда репозитарий форкнут, но Пуллов в основной репозит не будет. Мое действие — я например в Support, и мне сбросили Fork статус
image

Текущий мой трек. Это чисто заливы кода, Issue Tracker я не юзаю
RequirejsLookupElement — лишний класс.

Посмотрите com.intellij.codeInsight.lookup.LookupElementBuilder

Если точно помню — XML плагин имеет подобную реализацию
3. Light элементы — это теже элементы синтаксического дерева, ток его можно создать не через Лексику, а вручную. Зачастую ипользуется когда нужно возратить PSI елемент, который не является частью дерева.

4. Ленивые ноды, ноды которые парсятся при первом вызове. Это теже PsiFile работает через Lazy. Лейзи ноды используются например, ещё для Иньекций в основоное PSI дерево, другое PSI дерево другого языка(например JavaDoc парсинг в комментах явы)

5. В яве это сделано ибо — там есть поддержка уровней языка. Для каждого уровня — лексика немного отличается(кейворды), да и парсинг тоже.

Java имеет очень специфичную AST + PSI реализация
1. Брать код и копипастить — неудобно.
2. Нету даже базового проекта — что бы потестить
3. Код, показан только важная часть — импортов нету, например я не знаю что такое EventAdmin.

Спасибо

Information

Rating
Does not participate
Location
Тбилиси, Грузия, Грузия
Date of birth
Registered
Activity