Может войдёшь?
Черновики Написать статью Профиль

Мастерство Vim: Настройки для Laravel

перевод Laracasts Мастерство Vim

Это перевод видео-урока с Laracasts, серия Vim Mastery, урок №13Laravel-Specific Mappings от . Перевод обновлён . Опечатка? Выдели и нажми Ctrl+Enter.

(0:00)
Это Laracasts, в конце концов. Почему бы нам не прерваться и применить некоторые специальные улучшения для Laravel? Кстати, если вы не используете Laravel, вы можете применить их очень просто к любому фреймворку или инструменту, который используете. Хорошо. Если мы посмотрим в сайдбар, тут у нас типичное приложение Laravel. Одну вещь вы будете делать, возможно, чаще, чем что-либо, — посещать свой файл routes.php. Особенно на первом этапе. Сейчас у нас есть два варианта.

(0:30)
Можем ввести :e app/Http/routes.php. Это сработает. Другой вариант, конечно, — это использовать Command+P или :CtrlP, если вы не меняли команду. Затем введем routes. Или, как вы часто уже видели в Laracasts, — я тотчас переключусь туда. Вот как… Выйду отсюда. ,ev перенесет нас в файл routes.php (Jeffrey ошибся — в .vimrc). Теперь перейдем вниз. Что, если вот здесь… Продублирую это. Назовем это Laravel-Specific.

(1:00)
Что, если теперь мы применим нормальный mapping (nmap) и будем использовать последовательность <leader>l и, далее, какой-то идентификатор. В этом случае, если я хочу перейти в свой файл routes.php, я ввожу ,lr. Это перенесет меня в routes.php. Давайте попробуем. Переключусь назад. Теперь ,lr — и мы в файле routes.php. Вот почему я могу делать это так быстро в наших уроках. Мы в контроллере.

(1:30)
Мы решили, что нам нужно отредактировать файл routes.php. ,lr — и мы там. Здорово, верно? Полезно добавлять подобные вещи для любого файла, который вы используете постоянно. Например, если вы посещаете постоянно файл настроек в config/app, возможно, имеет смысл создать сочетание для него — ,la. Это может быть полезно. Теперь, что еще… Одна вещь. Конечно, вы можете перейти в терминал и ввести shphp artisan make:controller (для любой команды make, вы можете запустить ее тут).

(2:00)
Или, если хотите, можете делать это непосредственно в Vim. Вот так: :!php artisan make:controller FooController. К сожалению, MacVim неправильно передает цвета. Если честно, я до сих пор ищу способ исправить это. Вы можете использовать какие-то плагины, которые будут, например, открывать новую вкладку и выдавать результаты. Но работать с ними немного неудобно. Может быть вы найдете что-то получше. Дайте мне знать. Конечно, если мы откроем вкладку в нашем проекте… Command+P, FooController

(2:30)
Кстати, если вы только что создали файл и он не виден здесь, нажмите F5. Или, в моем случае, я нажму Fn+F5. Таким образом, он обновится. Хорошо. Я удалю этот файл, используя простую shell-команду: :!rm%, что означает «удалить файл». Если мы хотим ускорить этот процесс, может быть можно ввести <leader>lm :!php artisan make:. Этого хватит. Далее вы можете сами закончить. Давайте попробуем.

(3:00)
,lm — получилось. Добавляем make:controller FooController. Немного быстрее. Поверьте, всё это окупится. Возможно, вы захотите сделать вот что: ввести <Leader>lf (f для поиска). Это будет вызывать CtrlP и начнёт поиск чего-либо. Например, если я хочу найти контроллер, это будет вызывать app/Http/Controllers. Мы также должны поставить <cr> (переход на новую строку).

(3:30)
Хорошо, давайте попробуем выполнить. Откроем новую вкладку, ,lfc, и теперь фильтр CtrlP выдает только для Controllers. Конечно, вы можете создать другую команду для себя. Например, если вы ищете конкретный тип файла, может быть, что-то вроде <leader><leader>f будет вызывать его. Может быть вы решите, что ,, — подходящее сокращение для вашего проекта.

(4:00)
Далее вы просто введете букву, которая связана с видом папки. Итак, ,,c — ищем контроллеры. Если напишем по-другому, например, ,,m (для ваших моделей). В этом случае она будет искать в папке app. И давайте выполним еще одну для примера и я оставлю вас в покое. ,,v будет вызывать resources/views. Итак еще раз. ,,v будет вызывать представления (views). ,,m будет вызывать наши модели.

(4:30)
В этом случае, да, у нас только одна модель. Должно работать. Другой вариант, который я бы использовал, что-то вроде этого: вместо CtrlP, я могу просматривать непосредственно саму папку. И переход на новую строчку. На самом деле это будет даже немного быстрее. Давайте попробуем. Введем ,,v… И теперь вместо того, чтобы вызывать CtrlP, я сразу перейду в папку и смогу найти там, что нужно. Если мы применим этот подход, <leader><leader>c будет редактировать эту папку и переходить на новую строчку.

(5:00)
То же самое для папки models. Позволю вам выполнить это самим. Хорошо. ,,c — и я в папке Controllers. Смысл в том, чтобы сделать так, как нравится вам. Заполните этот раздел именно для тех файлов, которые вы посещаете часто. В моем случае, мне всегда нужен файл routes.php. ,lr мгновенно переносит меня туда. Здорово.

Как вы считаете, полезен ли этот материал? Да Нет

Написать комментарий

Разметка: ? ?

Авторизуйся, чтобы прокомментировать.