jcxz 184 20 октября, 2022 Опубликовано 20 октября, 2022 · Жалоба 22 минуты назад, artemkad сказал: У меня есть подозрение, что наследник твоей работы будет мечтать изобрести машину времени что-бы задушить тебя в колыбели... А чем вам не понравилась та строчка? 19 минут назад, AVI-crak сказал: То-есть по вашему критерию, моя скорость кодинга ниже плинтуса. А где я писал про некие "скорости кодинга" или критерии оценки кого-то по количеству нажатий?? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arlleex 131 20 октября, 2022 Опубликовано 20 октября, 2022 · Жалоба 2 часа назад, jcxz сказал: У вас весь кодинг такой что-ли??? То видео юмористически преувеличено, хотя и отражает весьма значимую долю правды. И многодесятковтысячные клацания по кнопкам у меня тоже бывали и бывают, но в основном для кода вспомогательного, отладочного, как Вы говорите. Такого, который вовсе к концу дня может быть весь потерт и переписан следующим днем. А в живом, перспективном проекте все эти стандартные шапки циклов все равно размазываются по времени общего клацания по клаве. При кодинге же сложного алгоритма "быстрый " (а на самом деле псевдобыстрый) набор даже вреден, т.к. за габаритной мыслью пальцы в любом случае не угонятся, а если будут пытаться угаться - то жди логические баги или перлы при рефакторинге (грабли необдуманного (ведь некогда думать!) копипаста, как пример). Уж лучше пусть даже банально на бумажке обрисовать алгоритм, дать вменяемые имена сущностям, а закодить - это всего лишь текст набрать. Ерунда, как по мне. При шлепании всяких формочек под винду никакие горячие клавиши не помогут существенно ускорить набор текста, ибо чаще всего все сводится к поиску нужного контрола, взятия его имени, возвращении к месту и продолжению клацания. Здесь вообще мало применимы какие-то сниппеты, заготовки. Гораздо важнее в любой IDE, я считаю, это всякие всплывающие контекстные подсказки - например, какие аргументы требует функция, какие поля в затребованной структуре, во что раскроется хитрожопый макрос и т.д. Однако, что кнопочников, что маус-клацкеров примерно поровну, а споры здесь - это что-то из разряда что лучше - ASM vs C, C vs C++, GCC vs no-GCC и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 53 20 октября, 2022 Опубликовано 20 октября, 2022 · Жалоба 2 часа назад, jcxz сказал: А чем вам не понравилась та строчка? Крайне не наглядный код с учетом простоты примера. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 17 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба 10 часов назад, Сергей Борщ сказал: я же говорю, не ради спора... не знал про эту кнопку. спс. 15 часов назад, VladislavS сказал: Проверил. Само как-то так сделалось : Home - Shift+End - Ctrl+X - подвести курсор на место вставки - Ctrl+V Неправда. Хотя неизвестно в каком редакторе у вас это получилось. Я проверил в eclipse и в IAR 1)Home 2)Shift+End 3)Ctrl+X после этого вместо удаленной строки пустая строка 4) подвести курсор на место вставки 5)Ctrl+V после этого на экране одна строка пустая, а та строка, куда вставил - там две строки. при копепасте в буфер обмена не попадает перевод строки. 6)Нажимаем Enter после этого после этого на экране одна строка пустая 7)подводим курсор на пустую строку 8)удаляем пустую строку (два раза Backspase) итого: 8 операций вместо одного нажатия Ctrl+стрелка. 11 часов назад, jcxz сказал: В моей работе, кроме каких-то сложных алгоритмов, также полно кода не особо сложного, но требующего множество нажатий клавиш при редактировании: всякий юзер-интерфейс; или вписывание какого-то функционала, на ранее разработанном базисе. ППКС. Я уже про это не стал расписывать. Такое часто возникает при написании утилит под винду/линукс для отладки/тестирования/конфигурирования железки. там такая рутина.... чувствуешь себя секретаршей. На бумажке делаешь набросок GUI и погнал кодинг. Голова уже не то что вперёд убежала... уже думает про работу в завтрашнем дне. Руки на автопилоте пишут GUI. 9 часов назад, Arlleex сказал: что кнопочников, что маус-клацкеров примерно поровну, а споры здесь - это что-то из разряда что лучше - ASM vs C, C vs C++, GCC vs no-GCC и т.д. предлагаю холивар кнопочников vs маус-клацкеров вынести из этой темы. Есть в эклипсе в CubeIde удобные фичи по работе со строками с помощью клавиатуры. Кто не может выпустить мышь из рук - не обращайте внимания. Кому это интересно - см. видео, спрашивайте, пользуйтесь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 17 21 октября, 2022 Опубликовано 21 октября, 2022 (изменено) · Жалоба 15 часов назад, artemkad сказал: Подозреваю речь про автозавершение ввода. В Npp сейчас это есть, только в настройках надо включить и настроить с какого символа предлагать варианты. Ну или это сниппеты, но они не встроены, а реализуются плагином. Нет. Это немного не то. Посмотрите ещё раз видео. Попробую объяснить. будет долго и нудно.... допустим у вас есть класс Gpio (или структура, не важно). class Gpio { void GPIO_ConfigPinLock(GPIO_T* port, uint16_t pin); void GPIO_ConfigEventOutput(GPIO_PORT_SOURCE_T portSource, GPIO_PIN_SOURCE_T pinSource); void GPIO_EnableEventOutput(void); void GPIO_DisableEventOutput(void); void GPIO_ConfigPinRemap(GPIO_REMAP_T remap); void GPIO_ConfigEINTLine(GPIO_PORT_SOURCE_T portSource, GPIO_PIN_SOURCE_T pinSource); } объявляем экземпляр класса Gpio gpioForOutClock; //имя переменной пишем либо в кэмелСтайле, либо с прочерками, аля gpio_for_out_clock далее.... вводим только буквы начала слова. т.е. в имени переменной слова "gpio", "For", "Out", "Clock". Вводим gF (или gO, или gFC. gCF не получится, т.к. нарушена последовательность слов "For" и "Clock"), нажимаем ctrl+пробел. автозавершение меняет gF на gpioForOutClock. если в коде есть две переменные, например ещё gpioForInClock, то автозаполнение предлагает выбрать либо gpioForOutClock, либо gpioForInClock. Представляете!!! Вы вы ввели два символа, а вам предлагают чуть ли не предложение выбрать из 2-х предожений. Если вы введёте gO - то выскочит однозначно gpioForOutClock. Т.е. нужно вводить символы по заглавным буквам (или по бкувам после символа "_"). вы хотите вызвать метод Gpio::GPIO_ConfigPinLock(), вы помните, что там начинаются все методы с "GPIO" и есть что-то типа "Lock". после "gpioForOutClock" жмём ".GL" и ctrl+пробел, у вас текст gpioForOutClock.GL меняется на gpioForOutClock.GPIO_ConfigPinLock(port, pin); В Nр++ автозавершение будет предлагать завершить слово после набора "gpioForOutClock.GPIO_" - причем предложит выбрать из всех методов, а их может быть 100. И то, предложит, если GPIO_ConfigPinLock встречалось в исходнеке ранее, Nр++ не будет анализировать хидер, который вложен через кучу других хидеров и предлагать вам только методы этого класса. А eclipse предложит только методы этого класса и он проверить все заглавные буквы и поищет последовательность слов начинающихся с g и L. Я сейчас в проекте набрал gL - выскочило в автозавершении 100500 вариантов. замучиешся искать. L - это и Lock, и Lenght, и Look.... Но мне надо именно Lock, набераешь gLo - один вариант GPIO_ConfigPinLock () gLoс - один вариант GPIO_ConfigPinLock (). Т.е. можно например набрать gCoLi - автодополнение будет искать такое имя, которое начинается с g, в котором есть слово начинающееся с "Co", после слова с "Co" где-то должно быть слово с "Li" и выведет однозначно GPIO_ConfigEINTScreenLine. я вот об этом автодополнении. Это автозавершени (автодополнение) в эклипсе изкоропки. Иар им похвастать не может. QtCreator может. В QtCreator без него вообще ни как. Очень много рутины и весь Qt в кэмелСтайле. Есть ли такое в VS или кейле? ps может я ошибаюсь и в Np++ такое уже давно есть? Его надо как-то включить и/или плуг накатить. 15 часов назад, artemkad сказал: надо, к примеру после каждого числа поставить L... я такое делаю примерно раз в год и через Np++. Открываю там файл, пишу макрос из 2-х нажатий (L стрелкаВниз), выполняю его n раз. Согласен, костыль! ))) Буду теперь знать про вертикальное редактирование. Спс. Изменено 21 октября, 2022 пользователем razrab83 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 17 21 октября, 2022 Опубликовано 21 октября, 2022 (изменено) · Жалоба 10 часов назад, Arlleex сказал: чаще всего все сводится к поиску нужного контрола, взятия его имени, возвращении к месту и продолжению клацания. если освоите автозаполнение по заглавным буквам, то забудете про "поиску нужного контрола" и отпадет потребность что-то искать и мышкой проваливаться в объявления/хидеры, и покидать места клацания. Изменено 21 октября, 2022 пользователем razrab83 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ericN 3 21 октября, 2022 Опубликовано 21 октября, 2022 (изменено) · Жалоба В 20.10.2022 в 23:10, Arlleex сказал: Однако, что кнопочников, что маус-клацкеров примерно поровну, а споры здесь - это что-то из разряда что лучше - ASM vs C, C vs C++, GCC vs no-GCC и т.д. может и поровну, но я думаю маусники - они не уменют клавишами. Нет, действительно у меня был знакомый, он в автокабе только на клаве 3д реисова. Любого маусника заткнет. Я думаю любой клавишник про мышку всё умеет/знает. А маусник про клаву далеко не всё. В коде - мышка, это удобно.... там вызвать меню, переключиться в отладчик.... но набирать текст - тут только клава. Конечно, если IDE убогая, как иар или Np++, то там да, покидаешь клацанье, ищешь метод, копипаст, возврат.... тут мышка очень помогает. Но если нормальная иде, она тебе автозавершением всё что надо сделает и тебе вообще не нужно покидать место клацанья. В 20.10.2022 в 23:10, Arlleex сказал: Гораздо важнее в любой IDE, я считаю, это всякие всплывающие контекстные подсказки - например, какие аргументы требует функция ну это не прерогатива мышки. автозаполнение вам вставит метод и аргументы с всплывающей подсказкой со всем типами. Изменено 21 октября, 2022 пользователем ericN Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 29 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба В VS продвинутые автодополнения и подсказки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
artemkad 53 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба 1 час назад, razrab83 сказал: Представляете!!! Вы вы ввели два символа, Т.е. по сути то-же автозаполнение, но не по первым символам слова, а по первым символам частей слова. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 17 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба 10 минут назад, VladislavS сказал: В VS продвинутые автодополнения и подсказки. Да, зачет. Было бы удивительно, если бы в VS его не было. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 29 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба А мне все эти свистоперделки только мешают. Имея возможность писать код в VS или IAR, я выбираю аскетичный IAR. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ericN 3 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба В 21.10.2022 в 10:37, artemkad сказал: Т.е. по сути то-же автозаполнение, но не по первым символам слова, а по первым символам частей слова. и да и нет. Это автозаполнение по первым символам частей слова того, которое есть в структуре/классе/дефайне. Т.е. IDE вам не предложит после usb.get абсолютно все слова в текущем документе начинающиеся со слова get, автодополнение предложит только те get, которые есть в usb. У вас usb может отнаследован от usbBase, а usbBase отнаследован от Device, а Device ребёнок Object. и в Object есть публичный метод getSomething(). Так всякие get - которых нет в пабликах родителей usb - автодополнение не предложит. Т.е. автодополнение разберёт все хидеры и предложет из доступных usb (даже если эти хидеры не открыты). Np++ не будет разбирать ни какие хидеры/структуры/классы (кто там в привате, а кто в паблике) и предложет автодополнение только из текущего открытого документа. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 17 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба 32 минуты назад, VladislavS сказал: В VS продвинутые автодополнения и подсказки. в эклипсе все таки попродвинутей. показывает возвращяемое значение и аргументы. 15 минут назад, VladislavS сказал: А мне все эти свистоперделки только мешают. согласен. кому то это наоборот это не по вкусу... но в эклипсе они не мешают, т.к. они выскакивают только по нажатию Ctrl+пробел. Если бы при наборе текста у меня бы всегда вылезали свистоперделки - я бы вообще в vi от такого IDE ушел. ps, причем Ctrl+пробел - это зачет. всё таки грамотный дизайнер эту клавишу выбрал. Ctrl всегда под пальцем, а пробел огромный - не промажешь. Было бы гораздо неудобней какойнить Alt+Shit+P. Пробел под самый частый хоткей. ИМХО. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 29 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба 3 минуты назад, razrab83 сказал: в эклипсе все таки попродвинутей. показывает возвращяемое значение и аргументы. VS и IAR тоже показывают 5 минут назад, razrab83 сказал: но в эклипсе они не мешают, т.к. они выскакивают только по нажатию Ctrl+пробел. Ну так это включается/выключается в настройках редактора. В эклипсе нельзя на постоянку включить разве? В прследних версиях IAR, кстати, с автодополнениями и подсказками уже лучше. По нескольким буквам слова выбирать не умеет, а по началу слова норм. И подсказки инфомативные У Keil своё видение этого процесса. По одной любой букве слова фильтрует. По двум неподряд уже нет. А вот подсказок с аргументами нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
razrab83 17 21 октября, 2022 Опубликовано 21 октября, 2022 · Жалоба 1 минуту назад, VladislavS сказал: В эклипсе нельзя на постоянку включить разве? не знаю. не пробывал. наверно у меня не было необходимости. 4 минуты назад, VladislavS сказал: В прследних версиях IAR, кстати, с автодополнениями и подсказками уже лучше. ну хорошо! по тихоньку выбираются из 90-х. возможно скоро отпадет необходимость во внешнем редакторе текста. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться