PostgreSQL coub express.js freeware git jquery laravel links linux macos mysql node.js php powershell python ubuntu vim virtualbox анекдот блог игры интересно стихи цитаты

Очередной справочник с интересными (и не очень) ссылками.
  • codeacademy - курс для начинающих на знаменитой академии с уклоном в веб-технологии как я понимаю.
  • checkio.org сногсшибательная обучающая "игра". Нужно понимать английский, но оно того стоит. Очень здорово сделано.
  • Learn Python The Hard Way, 3rd Edition книга или даже гайд по обучению. Английский язык. За сравнительно небольшие деньги можно выкупить видеоверсию и книгу в .pdf
  • Пост на хабре (и ещё один, прямо вчерашний) специально посвященный этой же теме, там тоже тонна ссылок + неплохой вступительный текст, спасибо авторам
  • Let's Learn Python - Basics небольшой вводный видеокурс на английском
  • Python Django tutorial видеокурс по Django, относительно свежий, начало в январе 2013
  • Официальный tutorial Гвидо ван Россума
  • Useful python functions интересная заметка



А теперь по порядку что тут такое происходит
  1. Печатаем какую-то строку в режиме insert (i)
  2. Переходим в режим normal (Esc) устанавливаем курсор на нашу строку и делаем так yy7p. То есть просто дублируем строку 7 раз.
  3. Входим в режим визуальный блок Ctrl+q и тянем курсор вниз на все наши строчки. Теперь есть вариант: выбрать ввод после символа под курсором (нажать A), или перед символом (нажать I)
  4. Вводим собственно то, что должно быть напечатано во всех выбранных строках.
  5. Нажимаем Esc
Думаю может быть интересно поиграть с режимом визуального блока.
Немного почитать о нем можно так :h ctrl-q
vim


Врядли это для кого-то открытие конечно, но тем не менее.
У mkdir (man mkdir) есть ключик -p который позволяет создавать довольно интересные структуры подпапок одним движением. Например
mkdir -p ./one/two/three
создаст три вложенных друг в друга папки внутри текущей директории.
Можно сделать несколько интереснее
mkdir -p ./one/{two1,two2,two3}/three
что даст нам такую структуру (допустим что мы запускали это все из домашней папки)
~/one/two1/three
~/one/two2/three
~/one/two3/three
Ну и ещё раз если вдруг кто не понял что происходит
mkdir -p ./one/{two1,two2,two3}/{th1,th2,th3}
Создает такую структуру
~/one/two1/th1
~/one/two1/th2
~/one/two1/th3
~/one/two2/th1
~/one/two2/th2
~/one/two2/th3
~/one/two3/th1
~/one/two3/th2
~/one/two3/th3
Ну и понятное дело фигурные скобки можно использовать не только с mkdir, в этом примере мы чистим папки с кешем и логами для трех типовых проектов лежащих в текущей папке
#!/bin/bash
rm -rf {proj1,proj2,proj3}/{logs,cache}/*


Vim: скринкасты
October 29, 2013
Тут буду подкладывать ссылок на кладбища скринкастов по виму
  1. Vim Tutorial Videos - для начинающих, от базовых до очень интересных вещей, веселый автор
  2. Vimcasts.org - широко известный ресурс, просто тонны всяких vim-вкусняшек, обязательно к посещению
  3. Destroy All Software - ворованный каталог из 80 скринкастов одного очень толкового дядьки. Кроме вима также рассматриваются git, TDD, *nix и т.д. Каталог можно глянуть вот тут.
  4. udioica.blogspot.ru - это не совсем скринкасты, а анимированные gif-ки с решениями задач с vimgolf.com. Вообще-то я не уверен что это человек. Больше похоже на vim-терминатора. Я не представляю как это все можно запомнить.
vim


Очень неудобно бывает после правки .vimrc закрывать сессию полностью чтобы применить внесенные изменения. Можно этого избежать довольно легко:
# выполните в редакторе :echo $MYVIMRC чтобы понять что это за переменная
source $MYVIMRC
Чтобы было удобнее жить можно добавить пару команд покороче, например так:
" edit ~/.vimrc file
command! RcEdit e $MYVIMRC
" reload ~/.vimrc config
command! RcReload source $MYVIMRC
vim


aghr