Pull to refresh

Лайфхаки в веб-разработке

Reading time 3 min
Views 4.1K
Upgrade your Life

Ссылки открытия файлов в IDE


Это облегчит вам поиск нужного файла.
Вы сможете создавать ссылки на код прямо на странице ошибки. Или в журнале ошибок.
Сделайте ссылки в dev панели на класс контроллера и файл шаблона (или что там у вас?)
Клик на такую ссылку будет переносить вас в соответствующий файл открытой IDE.



Как сделать?
Зарегистрируйте протокол для открытия файла или класса в IDE
Я использую протокол «edit:» и такую схему URL
edit:className@project
edit:relativePath@project
Программа, зарегистрированная за этим протоколом, определяет абсолютный путь к файлу и передает его в IDE.

В Опере зарегистрировать протокол тривиально:
Настройки → Расшиненные → Программы → Добавить…
Выбираете протокол (двоеточия не нужны) и программу

Для других браузеров можно настроить в операционной системе.
В Windows это делается через реестр.
В Unix через жопу по-разному.

К сожалению, ни одна используемая мной IDE не поддерживает открытие файла на конкретной строке через CLI.
А было бы классно.


upd: vim умеет, спасибо Stdit
vim -c line filename

upd: IDE от Jetbrains тоже научились, спасибо cuhuak
PHPStorm (да и, наверное, все IDE Jetbrains) умеет открывать файл на конкретной строке через CLI:
phpstorm --line N filename.

Причем, если у вас filename уже открыт и вы пытаетесь перейти на другую строку в этом файле, то IDE заботливо плавно проскролит в нужное место.

Я рад.

Короткий путь до файлов проекта


Путь вида /home/Ti/Project/projectname/www ломает клавиатуру
Программируя, нужно туда ходить или выполнять там программы.
На это место я создаю симлинку /w
Для документации проекта и всяких PSD я завожу путь /d

В Windows (привет, Document and Settings) тоже можно создавать симлинки или подключайте папки как диск.

Автоматические виртуальные хосты в веб сервере


В ручную заводить хосты — тратить время
У меня сделано так

CLI советы


Я пользую Unix операционную систему (FreeBSD) и терминал это моя правая рука.

Набор скриптов для работы с проектами

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

Для каждого проекта создается простой конфиг настроек:
— опции деплоя
— параметры подключения к базе
— параметры SSH
— и т.д.

Я использую такие скрипты по управлению проектами:
  • Создание
    Создает конфиг проекта и открывает его на правку
  • Изменение
    Открывает на правку конфиг
  • Создание базы данных
  • Открытие
    создает симлинки проекта:
    /w на сорцы
    /d на документацию, фотошоп и прочие файлы проекта
    Было бы здорово если можно через CLI открывать проект в IDE
  • Бэкап
    Бекапит production
  • Восстановление production из бекапа
  • Клонирование
    Копирует с проект с бэкапа в рабочую версию
  • SSH на production
  • MySQL локальный и на production
    CLI к базе MySQL проекта
    Удобно указывать после пайпа unix.
    Напрмер, можно залить дамп SQL в базу
    $ pv dump.sql | pj-mysql projectname
  • Деплой
  • Открытие класса/файла в IDE
  • и некоторые другие


Настройка SHELL

Настройте свой shell на удобную подстановку комманд, подстановки имени проекта в скриптах, вывод информации по системе контроля версий.

Спасибо


В комментариях, предлагаю хабрачеловекам поделиться своими лайфхаками в веб-разработке.

Дополнения


Ссылка для переключения между dev и prod хостами

Сделайте ссылку в dev-панели для переключения между разрабатываемой локальной версией и рабочим, production, сайтом.
Или используйте другой инструмент для быстрого переключения между этими хостами.

Дополнения из комментариев


Маркировка цветом разных серверов (спасибо, Stdit)

Раскрашивайте приглашения разных серверов в разные цвета. Например так (.bash_profile):
PS1='\e[32m\D{%Y-%m-%d %H:%M:%S} \w\e[0m\n\$ '

Звуковое оповещение о критических ошибках (спасибо, Stdit)

Если вы следите за логами через tail -f, добавляйте к сообщениям о критических ошибках символ №7 (\a).
Это добавит звуковой сигнал (Bell) в ваш терминал.
Tags:
Hubs:
+22
Comments 32
Comments Comments 32

Articles