ви могли б трохи уточнити, як це було для вас, що вам довелося змінити. Можливо, ви могли б вказати мені в правильному напрямку, надавши кілька посилань на інформацію, яку ви використовували.
Першим моїм джерелом були фактично сторінки інструментів man
. Просто введіть
$ man toolname
у командному рядку ( $
тут є частина підказки, а не введення).
Залежно від платформи вони досить добре написані і їх також можна знайти в Інтернеті. У разі make
я фактично прочитав повну документацію, яка зайняла кілька годин. Насправді, я не думаю, що це є необхідним або корисним у більшості випадків, але в моїх перших завданнях під Linux у мене було кілька спеціальних вимог, які вимагали складного makefile. Після написання файлу я передав його досвідченому колезі, який зробив незначні зміни та виправлення. Після цього я досить багато знав make
.
Я використовував GVIM, тому що в мене був якийсь (але не дуже) попередній досвід, я нічого не можу сказати про Emacs або альтернативи. Я вважаю, що це дійсно допомагає читати .gvimrc
конфігураційний файл інших людей . Багато людей розміщують це в Інтернеті. Ось моя .
Не намагайтеся освоїти всі бінутили одночасно, функцій занадто багато. Але отримайте загальний огляд, щоб ви знали, де шукати, коли в майбутньому щось потрібно. Однак ви повинні знати всі важливі параметри для g++
та ld
(інструмент посилання GCC, який викликається автоматично, за винятком випадків, коли явно запобігається).
Також мені цікаво, чи є у вас доповнення коду та підсвічування синтаксису під час кодування?
Підсвічування синтаксису: так, і набагато кращий, ніж Visual Studio. Код завершення: Так - іш . По-перше, я повинен визнати, що я не використовував завершення коду C ++ навіть у Visual Studio, оскільки (порівняно з VB та C #) він був недостатньо хорошим. Зараз я не використовую його часто, але, тим не менш, GVIM має підтримку вбудованого коду для C ++. У поєднанні з бібліотекою ctags та теґлістом, як теги, це майже IDE.
Власне, з мене почалася стаття Арміна Ронахера. Перш ніж прочитати текст, подивіться скріншоти в кінці його!
чи потрібно спочатку компілювати, перш ніж отримувати (синтаксичні) помилки?
Так. Але це те саме для Visual Studio, чи не (я ніколи не використовував Whole Tomato)? Звичайно, підсвічування синтаксису покаже вам невідповідні дужки, але це приблизно все.
і як ви налагоджуєте (знову думаєте, точки прориву тощо)?
Я використовую, gdb
що є інструментом командного рядка. Існує також графічний інтерфейс, який називається DDD
. gdb
є сучасним інструментом налагодження і може робити все, що можна зробити в IDE. Єдине, що мене справді дратує, - це читати слід стека, тому що рядки не є відступними або відформатованими, тому дуже важко сканувати інформацію, коли ви використовуєте багато шаблонів (що я роблю). Але вони також захаращують стек стеження в IDE.
Як я вже говорив, я мав "задоволення" робити свої перші кроки на мові програмування Java, використовуючи блокнот Windows та компілятор Java-командного рядка в середній школі, і це було, .. привітний кошмар! звичайно, коли я міг порівняти це з іншими курсами програмування, які я мав тоді, де у нас були гідні IDE
Не варто навіть намагатися порівнювати сучасний повнофункціональний редактор на зразок Emacs або GVIM з Блокнотом. Блокнот - це прикрашений TextBox
елемент управління, і це дійсно має все значення. Крім того, робота в командному рядку - це зовсім інший досвід роботи в Linux та Windows. Windows cmd.exe
сильно каліка. PowerShell набагато краще.
/ EDIT: Я мушу чітко зазначити, що GVIM має редагування вкладок (як у перегляді на вкладках, а не вкладках vs-space)! Знадобилося мені віки, щоб знайти їх, хоча вони зовсім не приховані. Просто відкрийте :tabe
замість простого :e
під час відкриття файлу або створення нового, а GVIM створить нову вкладку. Перемикання між вкладками може здійснюватися за допомогою курсору або декількох різних ярликів (залежно від платформи). Ключ gt
(тип g, потім tв командному режимі) повинен працювати скрізь, і переходить на наступну вкладку, або вкладку ні. n, якщо було вказано число Введіть, :help gt
щоб отримати додаткову допомогу.