Upload
yandex
View
2.427
Download
3
Embed Size (px)
Citation preview
Игорь Новак, Школа разработки интерфейсов
Редакторы кода
Зачем?
2
3
github.com/languages
4
inovak.site44.com/yaru2000
5
Как выбрать редактор?
6
7
8
Классификация редакторов
– простой редактор/среда разработки
9
Классификация редакторов
– простой редактор/среда разработки
– окружение (консоль/графический интерфейс)
10
Классификация редакторов
– простой редактор/среда разработки
– окружение (консоль/графический интерфейс) – лицензия
11
Классификация редакторов
– простой редактор/среда разработки
– окружение (консоль/графический интерфейс) – лицензия
– операционная система
12
Классификация редакторов
– простой редактор/среда разработки
– окружение (консоль/графический интерфейс) – лицензия
– операционная система
– ресурсоемкость
13
Классификация редакторов
– простой редактор/среда разработки
– окружение (консоль/графический интерфейс) – лицензия
– операционная система
– ресурсоемкость
– подход к настройке
14
Классификация редакторов
15
– Размер команды
– Code style
– Code review
– Парное программирование
– Технологический стек
– Поддержка важных технологий – Поддержка второстепенных технологий
– Работа с удаленным сервером
16
Особенности разработки
Что с этим дальше делать?
17
Настройка редактора
18
Сделайте его “sexy”
19
Выложите настройки на github
20
Хороший редактор можно допиливать бесконечно
21
Редактирование текста
22
en.wikipedia.org/wiki/Bram_Moolenaar
23
0. Touch typing (gtypist)
24
0. Touch typing (gtypist) 1. Передвигайтесь по тексту быстро
25
0. Touch typing (gtypist) 1. Передвигайтесь по тексту быстро 2. Don’t repeat yourself
26
0. Touch typing (gtypist) 1. Передвигайтесь по тексту быстро 2. Don’t repeat yourself 3. Работа с несколькими файлами
27
0. Touch typing (gtypist) 1. Передвигайтесь по тексту быстро 2. Don’t repeat yourself 3. Работа с несколькими файлами 4. Сделайте это привычкой
28
Передвижение по файлу
29
– переход по номеру строки/символа
– переход в начало/конец файла/строки
– переход на n% часть
– скроллинг на пол-‐экрана/экран
– перемещение курсора относительно окна
– поиск по паттерну/токену под курсором – переход к символу
– переход по меткам
– движение по абзацам, предложениям, словам
30
– переход по номеру строки/символа
– переход в начало/конец файла/строки
– переход на n% часть
– скроллинг на пол-‐экрана/экран
– перемещение курсора относительно окна
– поиск по паттерну/токену под курсором – переход к символу
– переход по меткам
– движение по абзацам, предложениям, словам
– по секциям
– по тегам
– по конструкциям кода (блоки, фолдинг etc)
31
– выделение по переходам
– внутри кавычек
– внутри скобок – внутри предложений, абзацев
– внутри тегов
– внутри синтаксических конструкций
– выделение блока
32
Выделение текста
– редактирование
– удаление (и вставка)
– отступ – окружение кавычками/скобками
– комментирование
– форматирование
– global ex
33
Работа с выделенным текстом
– повторение простой операции
– повторение составной операции (макрос) – global ex
– команды
– автодополнение по паттерну (токен/строка)
– плагины
– темплейты, сниппеты
34
Автоматизация
– открыть несколько файлов
– открыть дерево файлов – открыть файл под курсором
– найти файл в проекте по имени
– открыть буфер
– табы/сплиты
– diff
– создать, переименовать, удалить файл
35
Работа с несколькими файлами
– grep
– ack – ag
36
Поиск по коду в проекте
37
Системы контроля версий
38
SSH, tmux
– редактирование настроек внешнего вида, мапов,
отображения текста, whatever
– редактирование сниппетов, макросов, команд
– добавление/обновление/удаление плагинов
– импорт/экспорт
39
Управление плагинами, настройками
Intellisense
40
Компилятор
REPL Spellchecker
Поддержка мультиязычности
Большие файлы
Бинарные файлы
Поддержка рефакторинга
Live reload
41
Дальше не придумали импровизируй
42
openvim.com
clck.ru/4h4nk – скринкасты
github.com/ignovak/vimrc
Ссылки
vorian@yandex-‐team.ru
Игорь Новак