jvmchat | Unsorted

Telegram-канал jvmchat - pro.jvm

5858

Сообщество разработчиков Java Scala Kotlin Groovy Clojure Чат для нач-их: @javastart Наш канал: @proJVM Вакансии: @jvmjobs @jvmjobschat Конфы: @jvmconf ⚠️ Оффтоп -> @flood ❌Переход на личности ❌Троллинг ❌Реклама ❌HH (вакансии) ❌Варез

Subscribe to a channel

pro.jvm

тоже вроде бы работает, только (у меня по крайне мере) ctrl - ---- сворачивает текущий блок, не метод сразу - это 2-4 клика

Читать полностью…

pro.jvm

лайхак. жмешь ctrl -, это сворачивает метод. home, shift + стрелка вниз)

три действия)

Читать полностью…

pro.jvm

Видимо, пока проще всего метод мышкой свернуть по первой строке, и мышкой выделить вместе с аннотациями и джавадоками ))

Читать полностью…

pro.jvm

Если по Extend Selection, или по Ctrl-[ , Shift-Ctrl-], но есть вложенные блоки типа ифов, циклов - то кликов много, и не выделяется сигнатура, аннотация, джавадоки

Если по параграфам, как на моем скрине, но внутри метода есть пустые строки - надо одним хоткеев выйти к первой пустой строке, а потом вторым хоткеем выделять до конца метода. Тоже несколько кликов

И вроде второй вариант чуть нагляднее, но мне тоже не нравится: можно проскочить окончание метода, особенно когда методы километровые, и рефакторинг не планируется )

Читать полностью…

pro.jvm

с vi{ - навреное не полное решение, нам же еще как-то на первую строку метода надо уйти

Читать полностью…

pro.jvm

Но сука в методе ведь тоже пустые строки могут быть )))

Читать полностью…

pro.jvm

ну меньше нажатий врятли получится.
Я в целом про плагин ideavim и вимовские хоткеи к которым надо привыкать


Да, согласен, ерунду сказал

Читать полностью…

pro.jvm

c ideavim в блоке метода vi{ выделит все между первой открывающей скобкой до курсора и соответствующей ей закрывающей, но есть нюанс)

Читать полностью…

pro.jvm

Слишком много букав, страшно и непоняфно😬

Читать полностью…

pro.jvm

А, вижу. Миль пардон :)

Читать полностью…

pro.jvm

Но его тоже можно отыскать в той же репе :)

Читать полностью…

pro.jvm

Я не спрашиваю про работу интерпретатора, я спрашиваю про on-stack replacement, который делает джит

Читать полностью…

pro.jvm

ну on-stack replacement явно не в javac происходит

Читать полностью…

pro.jvm

Его можно найти в репе Open JDK

Читать полностью…

pro.jvm

Посмотрите исходник интерпретатора байт-кода — лично я там ничего не увидел, связанного с перекроением фрейма

Читать полностью…

pro.jvm

Только сворачивается не сразу метод, а по вложенным блокам. Но да, так удобнее всего по ходу

Читать полностью…

pro.jvm

ага, это может быть быстрее всего, если мышка в руках находится 😄

Читать полностью…

pro.jvm

оказывается, jb даже реализовал такую фичу, но только почему-то для с#, вроде бы в java нет.

Экшен называется Select Containing Declaration - https://www.jetbrains.com/help/resharper/Navigation_and_Search__Go_to_Containing_Declaration.html

может когда и в джаву добавят

Читать полностью…

pro.jvm

Ну прям для методов не нашел ничего

Читать полностью…

pro.jvm

разве выходит с этими экшинами меньше кликов, чем с Extend Selection? как будто бы то на то и выходит

Читать полностью…

pro.jvm

Просто метод - это же не только код между скобками, но и сигнатура, аннотации, джавадоки итп

В этом случае логичнее по пустым строкам между методами ориентироваться, по ходу

В виме кстати тоже так можно: по очереди v, {, }

Читать полностью…

pro.jvm

... о котором и был вопрос ))

Читать полностью…

pro.jvm

Можно хоткеи для навигации по параграфам использовать

Но хоткеи определять самому надо, и между методами пустые строки должны быть

тогда получается:
- Ctrl-Alt-[
- Ctrl-Alt-Shift-]

Наверное, можно как-то макрос записать, и на него хоткей навесить

Читать полностью…

pro.jvm

Есть тут гуры идеи? Мне надо выделить метод, в теле которого я щас нахожусь. Как это сделать наименьшим числом хотикиев?
Щас пользуюсь Extend Selection, и это берет 3-6 хоткиев в сумме.

Читать полностью…

pro.jvm

OSR автоматом подразумевает JIT

Читать полностью…

pro.jvm

А, так я и уточнил потом — не JIT ли часом имеете ввиду :)

Тогда не подскажу, в кишках JIT особо не ковырялся (хотя собираюсь)

Читать полностью…

pro.jvm

А при чем тут javac, если Вы про работу интерпретатора с инструкциями спрашивали (если я правильно понял вопрос)?

Читать полностью…

pro.jvm

Так компилятор тупо код из .java перегоняет в инструкции, а дальше они уже интерпретируются JVM. Или Вы про JIT?

Читать полностью…

pro.jvm

мы про комиляторы, не про интерпретатор

Читать полностью…

pro.jvm

там прямо в листинге асма указываются poll

А while (и любые инструкции циклов) тупо используют GOTO (а break переходит на следующую инструкцию после цикла)


это вообще никак не связано с вопросом

Фрейм стека у тебя не может быть перекроен


может, если расклад нового не длиннее существующего

Читать полностью…
Subscribe to a channel