воскресенье, 13 августа 2017 г.

установка xdebug для sublime + php5 на linux

Установка xdebug


sudo apt install php5-xdebug

Редактируем php.ini

sudo subl /etc/php5/fpm/php.ini

Вставляем строчки

xdebug.remote_enable=On
xdebug.remote_handler=dbgp
xdebug.remote_host=127.0.0.1
xdebug.remote_port=9000
xdebug.remote_log="/log/var/xdebug.log"
xdebug.remote_mode="req"

Перезапускаем php-fpm

sudo service php5-fpm restart

Проверяем, что все встало как надо

php5-fpm -m -c | grep xdebug

Если видно xdebug то все в порядке

Настраиваем sublime text


Устанавливаем в sublime пакет xdebug client, для этого должен быть установлен package control.
В sublime text нажимаем ctrl + shift + p выбираем Package Control: install Package, немного ждем, пока sublime прочитает репозитории и в появившемся окне ищем Xdebug client.  
Затем создаем проект Project -> Save project as
И в появившемся файле настроек проекта (имяпроекта.sublime-project) пишем  

"settings": {
    "xdebug": {
         "url": "http://public.tonar.lo/",
         "max_depth": 5
    }
}


Узел settings должен быть корневым, т.е. в целом должно получиться что то вроде этого

{
 "folders":
 [
  {
   "follow_symlinks": true,
   "path": "."
  }
 ],
    "settings": {
        "xdebug": {
             "url": "http://public.tonar.lo/",
             "max_depth": 5
        }
    }
}


Проверяем, у нас должна появится вкладка xdebug в контекстном меню и в Tools Теперь настроим горячие клавиши Идем в Preferences -> Key Bindings и редактируем

[
 {"keys": ["ctrl+f8"], "command": "xdebug_breakpoint"},
 {"keys": ["shift+f8"], "command": "xdebug_conditional_breakpoint"},
 {"keys": ["ctrl+shift+f5"], "command": "xdebug_continue", "args": {"command": "run"}},
 {"keys": ["ctrl+shift+f6"], "command": "xdebug_continue", "args": {"command": "step_over"}},
 {"keys": ["ctrl+shift+f7"], "command": "xdebug_continue", "args": {"command": "step_into"}},
 {"keys": ["ctrl+shift+f8"], "command": "xdebug_continue", "args": {"command": "step_out"}},
 {"keys": ["ctrl+shift+f9"], "command": "xdebug_session_start"},
 {"keys": ["ctrl+shift+f10"], "command": "xdebug_session_stop"},
 {"keys": ["ctrl+shift+f11"], "command": "xdebug_layout", "args": {"keymap" : true}}
]

Горячие клавиши по умолчанию можно посмотреть распаковав пакет Xdebug Client в файле Default.sublime-keymap

Страница пакета Xdebug Client

среда, 5 июля 2017 г.

Yii включить gii

В config/main.php

В modules надо добавить

'gii' => array(
    'class' => 'system.gii.GiiModule',
    'password' => '1',
),


В urlManager rules

'gii'=>'gii',
'gii/<controller:\w+>'=>'gii/<controller>',
'gii/<controller:\w+>/<action:\w+>'=>'gii/<controller>/<action>',

yii Распечатать конфиг

print_r(Yii::app()->getComponents(false));

git Игнорировать изменения прав доступа

git config core.fileMode false

В конфиге:

core.fileMode
 If false, the executable bit differences between the index and the
 working copy are ignored; useful on broken filesystems like FAT.
 See git-update-index(1). True by default.



-c для установки в одной команде:

git -c core.fileMode=false diff

--global Установит поведение по умолчанию для текущего юзера:

git config --global core.fileMode false


core.fileMode Охватывает только бит исполнения.