Перейти к содержанию
    

22 минуты назад, artemkad сказал:

У меня есть подозрение, что наследник твоей работы будет мечтать изобрести машину времени что-бы задушить тебя в колыбели...

А чем вам не понравилась та строчка?

19 минут назад, AVI-crak сказал:

То-есть по вашему критерию, моя скорость кодинга ниже плинтуса.

А где я писал про некие "скорости кодинга" или критерии оценки кого-то по количеству нажатий?? :shok:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, jcxz сказал:

У вас весь кодинг такой что-ли???

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

И многодесятковтысячные клацания по кнопкам у меня тоже бывали и бывают, но в основном для кода вспомогательного, отладочного, как Вы говорите. Такого, который вовсе к концу дня может быть весь потерт и переписан следующим днем. А в живом, перспективном проекте все эти стандартные шапки циклов все равно размазываются по времени общего клацания по клаве. При кодинге же сложного алгоритма "быстрый " (а на самом деле псевдобыстрый) набор даже вреден, т.к. за габаритной мыслью пальцы в любом случае не угонятся, а если будут пытаться угаться - то жди логические баги или перлы при рефакторинге (грабли необдуманного (ведь некогда думать!) копипаста, как пример). Уж лучше пусть даже банально на бумажке обрисовать алгоритм, дать вменяемые имена сущностям, а закодить - это всего лишь текст набрать. Ерунда, как по мне.

При шлепании всяких формочек под винду никакие горячие клавиши не помогут существенно ускорить набор текста, ибо чаще всего все сводится к поиску нужного контрола, взятия его имени, возвращении к месту и продолжению клацания. Здесь вообще мало применимы какие-то сниппеты, заготовки. Гораздо важнее в любой IDE, я считаю, это всякие всплывающие контекстные подсказки - например, какие аргументы требует функция, какие поля в затребованной структуре, во что раскроется хитрожопый макрос и т.д.

Однако, что кнопочников, что маус-клацкеров примерно поровну, а споры здесь - это что-то из разряда что лучше - ASM vs C, C vs C++, GCC vs no-GCC и т.д.:smile:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, jcxz сказал:

А чем вам не понравилась та строчка?

Крайне не наглядный код с учетом  простоты примера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 часов назад, Сергей Борщ сказал:

image.png.09a6868887eca190ddaa6c7e8a9cc017.png

я же говорю, не ради спора... не знал про эту кнопку. спс.

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 удобные фичи по работе со строками с помощью клавиатуры. Кто не может выпустить мышь из рук - не обращайте внимания. Кому это интересно - см. видео, спрашивайте, пользуйтесь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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 раз. Согласен, костыль! ))) Буду теперь знать про вертикальное редактирование. Спс.

Изменено пользователем razrab83

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 часов назад, Arlleex сказал:

чаще всего все сводится к поиску нужного контрола, взятия его имени, возвращении к месту и продолжению клацания.

если освоите автозаполнение по заглавным буквам, то забудете про "поиску нужного контрола" и отпадет потребность что-то искать и мышкой проваливаться в объявления/хидеры, и покидать места клацания.

Изменено пользователем razrab83

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 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, я считаю, это всякие всплывающие контекстные подсказки - например, какие аргументы требует функция

ну это не прерогатива мышки. автозаполнение вам вставит метод и аргументы с всплывающей подсказкой со всем типами.

image.png.c9ca7904a43a9925ee1d856028f40c43.png

 

Изменено пользователем ericN

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, razrab83 сказал:

Представляете!!! Вы вы ввели два символа,

Т.е. по сути то-же автозаполнение, но не по первым символам слова, а по первым символам частей слова. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

10 минут назад, VladislavS сказал:

В VS продвинутые автодополнения и подсказки.

Да, зачет. Было бы удивительно, если бы в VS его не было. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А мне все эти свистоперделки только мешают. Имея возможность писать код в VS или IAR, я выбираю аскетичный IAR.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В 21.10.2022 в 10:37, artemkad сказал:

Т.е. по сути то-же автозаполнение, но не по первым символам слова, а по первым символам частей слова. 

и да и нет. Это автозаполнение по первым символам частей слова того, которое есть в структуре/классе/дефайне. Т.е. IDE вам не предложит после usb.get абсолютно все слова в текущем документе начинающиеся со слова get, автодополнение предложит только те get, которые есть в  usb. У вас usb может отнаследован от usbBase, а usbBase отнаследован от Device, а Device ребёнок Object. и в Object есть публичный метод getSomething(). Так всякие get - которых нет в пабликах родителей usb - автодополнение не предложит. Т.е. автодополнение разберёт все хидеры и предложет из доступных usb (даже если эти хидеры не открыты). Np++ не будет разбирать ни какие хидеры/структуры/классы (кто там в привате, а кто в паблике) и предложет автодополнение только из текущего открытого документа.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

32 минуты назад, VladislavS сказал:

В VS продвинутые автодополнения и подсказки.

в эклипсе все таки попродвинутей. показывает возвращяемое значение и аргументы.

image.png.ad4e3b11f582e2ad7d6b649531bb5124.png

15 минут назад, VladislavS сказал:

А мне все эти свистоперделки только мешают.

согласен. кому то это наоборот это не по вкусу... но в эклипсе они не мешают, т.к. они выскакивают только по нажатию Ctrl+пробел. Если бы при наборе текста у меня бы всегда вылезали свистоперделки - я бы вообще в vi от такого IDE ушел.

 

ps, причем Ctrl+пробел - это зачет. всё таки грамотный дизайнер эту клавишу выбрал. Ctrl всегда под пальцем, а пробел огромный - не промажешь. Было бы гораздо неудобней какойнить Alt+Shit+P. Пробел под самый частый хоткей. ИМХО.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

3 минуты назад, razrab83 сказал:

в эклипсе все таки попродвинутей. показывает возвращяемое значение и аргументы.

VS и IAR тоже показывают

image.thumb.png.6bab2e1eb788baa064eb3d2158b61afc.png

 

5 минут назад, razrab83 сказал:

но в эклипсе они не мешают, т.к. они выскакивают только по нажатию Ctrl+пробел.

Ну так это включается/выключается в настройках редактора. В эклипсе нельзя на постоянку включить разве?

 

В прследних версиях IAR, кстати, с автодополнениями и подсказками уже лучше. По нескольким буквам слова выбирать не умеет, а по началу слова норм. И подсказки инфомативные

image.thumb.png.361376c1d95349f6680ff65f2336313d.png

 

У Keil своё видение этого процесса. По одной любой букве слова фильтрует. По двум неподряд уже нет.

image.png.3d81705abfda5132216c94c6278ea426.png

А вот подсказок с аргументами нет.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 минуту назад, VladislavS сказал:

В эклипсе нельзя на постоянку включить разве?

не знаю. не пробывал. наверно у меня не было необходимости.

4 минуты назад, VladislavS сказал:

В прследних версиях IAR, кстати, с автодополнениями и подсказками уже лучше.

ну хорошо! по тихоньку выбираются из 90-х. возможно скоро отпадет необходимость во внешнем редакторе текста.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...