В случае, если необходимо связать переменные с литеральными строками:
string1=hello
string2=world
mystring="some ${string1} arbitrary ${string2} text"
echo $mystring
произведет:
некоторые привет произвольный мировой текст
Я сохранился с Vim некоторое время, стоит знать основы VIM, поскольку Вы будете всегда находить поле UNIX где-нибудь, которое только имеет это, но я попробовал Emacs и не оглянулся назад. Eclipse является 'современной' альтернативой, у меня есть все три в моей системе!
Emacs/Vim/Eclipse/... - Лично я - пользователь Emacs. Если Вы находите, что управляющие последовательности утомляют Ваш мизинец, просто Режим Гадюки это. Emacs так хорошо интегрируется в Unix, делая очень легким управлять всем все от одного места. Vim также делает хорошее задание здесь, но я нахожу, что Elisp намного более мощный дополнительный язык, чем Сценарий Vim. Можно было говорить в течение многих часов обо всех способах создать Emacs для разработки C. Режим Flymake был упомянут и является супер запуском к вещам. Я не знаком с Eclipse, я не нахожу, что он покидает достаточно комнаты на моем экране для кода, и при этом мне не нравится, насколько чрезмерно увеличенный в размерах это (пользователи Vim скажут то же самое о Emacs). Я также незаконно смещаюсь против чего-либо записанного в Java по чисто эстетическим причинам.
Ctags - Отмечает Ваш C (или многие другой язык) функции так, чтобы Vim или Emacs или независимо от того, что может сделать определенный гипертекст, связывающийся в Ваших файлах. Скажите, что Вы блуждаете вокруг, и Вы видите функцию, и Вы царапаете голову, говорящую, "Что тот делает снова? Именование немного неопределенно". Перебор доски звона, можно мчаться прямо к, он - определение.
Cmake/Gnu-Autotools - Сделайте является большим, но в какой-то момент необходимо абстрагировать вещи немного так, чтобы проект мог создать себя на всех видах систем, на которые у Вас нет способа протестировать. Если Вам только нужны люди для создания кода *, отклоняют, Автоинструменты является большим, но действительно необходимо ознакомиться с Cmake так или иначе. Команды Cmake создают код в каждой мыслимой возможной конфигурации и удостоверяются, что Вы не должны проходить головную боль. Если Вы хотите, чтобы Ваш проект был легко забран, покупают других, один из этих инструментов крайне важен.
Git/Mercurial/Subversion/... - Вы могли провести месяцы, исследуя программное обеспечение управления версиями, но необходимо, вероятно, просто пойти с Мерзавцем. Это твердо, это распределяется, $! # %& Ядро Linux прослежен с ним. Если это достаточно хорошо для Linus, это получено, чтобы быть достаточно хорошим для Вас. Я также слышу, что хорошие вещи о Подвижном, по-видимому, G ** gle использует их, таким образом, это, вероятно, не плохо. Некоторым людям, кажется, нравятся Подверсия и CVS и этажерка. Мне не нравятся они, потому что они являются монолитными, чтобы мне очень неудобно и ограничивает.
Stumpwm/wmii/XMonad/... - В какой-то момент Вы собираетесь понять, что что-либо, что можно сделать для хранения течения работы, собирается значительно улучшить вывод. Один из лучших способов помешать Вашему мозгу повреждаться это - контекст, должен переключиться на мозаичное размещение, КЛАВИАТУРА УПРАВЛЯЕМЫЕ менеджеры окон. Я - персональный поклонник StumpWM, Emac менеджеров окон. Полностью реализованный в непрерывном настраиваемом процессе языка Common LISP, что-либо, что Вы делаете повторяющимся образом, может быть выслано далеко в функции и связано с командами. Большой материал. Я не знаю много ни об одних из других, но возможно дальнейшую разработку лучше оставляют другому потоку. ИСПОЛЬЗУЙТЕ КЛАВИАТУРУ как можно больше.
GDB - Я не знаком с другими отладчиками, но это, кажется, фактический стандарт.
Valgrind - Я не знаю ни о чем больше, что делает то, что это так успевает. Valgrind крайне важен для всех тех противных поисков на профилирование/утечку памяти, на которые Вы хотите пойти. Вы просто не можете написать код с malloc/calloc без Valgrind.
Это - в значительной степени персональное предпочтение, таким образом, я не думаю, что могу сделать намного больше, чем говорят Вам, что я использую. Мне создали Emacs с режимом Flymake, который периодически компилирует файл, Вы продолжаете работать, и анализирует выход компилятора для выяснения, какие ошибки Вы совершили. Это hilights ошибки/предупреждения в буфере и шоу связанное сообщение ошибки компилятора
При выполнении разработки C под Unix/Linux абсолютно необходимо использовать Cscope, если проект является каким-либо значительным размером.
Cscope является инструментом разработчика для просмотра исходного кода - переход для функционирования foobar
определение, найдите все места где переменная foo
ссылается, найдите все файлы включая bar.h
, измените все случаи bar
в baz
, и т.д.
Кроме того, Вы упомянули, что Vim в Вашем сообщении... вот является учебным руководством при использовании Vim & Cscope вместе.
Можно использовать Пакет C/C++ Netbeans, которые работают с G ++/GCC:
мой любимый является экс-энергией. Имеют много плагинов энергии, которое делает это очень простым в использовании с большой кодовой базой. Я до занимаю приблизительно 1 день для изучения его функций, но это будет стоить того.
Я редактирую C с Vim в консоли. Я использую make-файлы и имею много компиляторов для тестирования моего кода против, включая gcc, лязг (LLVM) и ICC. Другие вещи я рассматриваю часть своей среды разработки: использование grep, отладчиков и valgrind. Язык сценариев для более сложных сборок. Мерзавец для управления версиями.
Более важный в моем уме, чем то, что Вы используете для редактирования кода, - то, как Вы структурируете свой код. Как разметить, который является, вероятно, вопросом для Переполнения стека, но, поскольку Вы спросили, у меня часто есть отдельный каталог для объектного кода не для распределения и другой папки для результанта binar (y|ies). У меня есть папка тестирования, которая содержит больше файлов C, которые используют весь общий код, который я пишу и они я valgrind, наряду с заключительным файлом проекта.
Я использую Kate (текст) gcc/avr-gcc и делаю с Мерзавцем как VC. Я главным образом делаю встроенный материал в c и компьютерную сторону в Python.
Можно попробовать Двигатель IDE. Это - проклятия, базирующиеся, таким образом, необходимо чувствовать себя подобно дома (TM).) Это также немного печально, потому что это не сохраняется в течение 5 лет теперь, таким образом, somethings могли бы быть повреждены. Хотя все еще - я полагаю, что это стоит попытки.