Схема таб т 2: ТАБ-T-2, ТАБ, 2, таб-2, таб, 2, тепловое реле, реле, предохранитель, термоплавкий предохранитель, устройство, назначение, Стинол, электросхема, холодильник, ремонт, мастерская, Тольятти

Содержание

ТАБ-Т-2

Подробности
Автор: Администратор

Опубликовано: 07 ноября 2014

ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы (функция термовыключателя).

 

Прибор бесшкальный, тип монтажа – щитовой, способ крепления – скоба-винт.

Температура, °С: замыкания контактов – -8 ± 5; размыкания контактов – +11 ± 4; срабатывания термовыключателя (без самовозврата) – 72-5.

Имеет три исполнения:

  1. ТАБ-Т-1 – с тремя проводами;
  2. ТАБ-Т-2 – с четырьмя проводами;
  3. ТАБ-Т-3 – с тремя проводами, спрессованными фастонами.

Выводы контактов выполнены изолированными гибкими проводами сечением 0,75 мм2, длиной 2 (3) провода – 400 мм и 1 провод – 300 мм. Коммутируемый ток – до 3 А при напряжении 250 В частотой 50(60) Гц. Температура окружающего воздуха – от -40 до +45 °С. Габариты – 30x37x15 мм. Масса – 0,04 кг.

Подробности

Просмотров: 6401

Недостаточно прав для комментирования

Таб т 2 схема – e8k1pzh.atspace.tv

Скачать таб т 2 схема doc

ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и таб аварийного aspire 7736zg схема электрической цепи нагревателей системы NO-FROST таб случае неисправности элементов схемы (функция термовыключателя). ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае схемы элементов схемы (функция термовыключателя).

Реле ТАБ-Т-1 замкнёт свои контакты и через тэн подаст питание на таймер ТИМ Таймер начнёт отчитывать время работы компрессора. Регуляторы температуры с гитара урал. схема (ПТР, ТАБ-Т), предназначены для регулирования работы системы оттайки испарителя (функция регулировки температуры) и для аварийного размыкания электрической цепи нагревателей схемы NO-FROST в случае неисправности элементов схемы (функция термовыключателя) в бытовых холодильниках-морозильниках Стинол, Индезит, Аристон, Позис и др.

Температура, °С: замыкания контактов – -8 ± 5; размыкания контактов – +11 ± 4; срабатывания термовыключателя (без самовозврата) – Имеет три исполнения: ТАБ-Т-1 – с тремя таб ТАБ-Т-2 – с четырьмя проводами; ТАБ-Т-3 – с тремя проводами, спрессованными фастонами.

Т2 тюнера уровень сигнал стабилен но изображение идёт с мазайками. Вот тут уже можно запустить принудительный цикл разморозки с тестовой схемы реле ТИМ ТАБ-Т это термопредохранитель и реле температуры в одном корпусе, аналог для замены ТАБ-Т Хотя там в первую очередь нужно проверять таймер оттайки, вот он на фото запчастини для холодильників Indesit.

Датчики-реле: ТАБ-Т. Назначение: Для регулирования работы системы оттайки испарителя и для размыкания электрической цепи нагревателей системы в случае аварийного повышения температуры.  Температура срабатывания термовыключателя (без самовозврата), 0С.

Количество проводов, шт. ТАБ-Т Датчик-реле температуры с термовыключателем. – 8 ± 5. ТАБ-Т это термопредохранитель и реле температуры в одном корпусе, аналог для замены ТАБ-Т Хотя там в первую очередь нужно проверять таймер оттайки, вот он на фото запчастини для холодильників Indesit. На таймере есть кнопка для принудительной оттайки. Расположен таймер в морозильной камере. Оценка +1. Цитата.

holodaldo. КХ Предохранитель 4-х конт. Стинол ТАБ-Т-2 без колодки. Избранное. В наличии: много. Нашли дешевле? + – В корзину. Посмотреть все Предохранители. Характеристики и описание. Реле тепловое (Дефростер) Холодильника ARISTON-INDESIT C (ТАБ – Т – 2). Рейтинг: Увеличить изображение. Бренд: Артикул: C Вес: Кг.

Производитель: ARISTON-INDESIT. 1. Тепловое реле (Датчик оттайки) – 20T80K (ТПП ТАБ-Т2) с термовыключателем 4-х концевое Для холодильников: Ariston (Аристон), Indesit (Индезит), Stinol (Стинол) Датчик оттайки предназначен для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы (функция термовыключателя).

Способ крепления – скоба-винт Температура замыкания контактов -8°С ± 5°С; Температура размыкания контактов – +11°С ± 4°С; Температура срабатывания термовыключателя (без самовозвр.

EPUB, PDF, fb2, txt pw52057c схема

Таб т 2 схема – lp05uta.atspace.co.uk

Скачать таб т 2 схема PDF

ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы (функция термовыключателя).

Предохранитель ТАБ-Т Артикул: X Четыре схема кормления акана. Предохранитель ТАБ-Т-2 для холодильников Стинол Артикул: Х 4-х контактный, без схемы Температура срабатывания на размыкание цепи + 10°C, температура аварийного размыкания 72°С.

Купить реле тепловое ТАБ-Т-2 с 4 контактами для холодильников Indesit, Ariston, Stinol,в Краснодаре на ул.Уральской, – ТЕХ-ЗИП, тел.: 8 ()   Реле тепловое ТАБ-Т-2 для холодильника Indesit, Ariston, Stinol устанавливается на холодильники моделей: RMBF. Реле тепловое (Дефростер) Холодильника Таб C (ТАБ – Т – 2).

ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и таб аварийного размыкания электрической схемы нагревателей системы NO-FROST в случае неисправности элементов схемы Доставка: Россия от Р.

1. Тепловое реле (Датчик оттайки) – 20T80K (ТПП ТАБ-Т2) с термовыключателем 4-х концевое Для холодильников: Ariston (Аристон), Indesit (Индезит), Stinol (Стинол) Датчик оттайки предназначен для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы (функция термовыключателя). Способ крепления – скоба-винт Температура замыкания контактов -8°С ± 5°С; Температура размыкания контактов – +11°С ± 4°С; Температура срабатывания термовыключателя (без самовозвр.

ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы (функция термовыключателя). Прибор бесшкальный, тип монтажа – щитовой, способ крепления – скоба-винт. Температура, °С: замыкания контактов – -8 ± 5; размыкания контактов – +11 ± 4; срабатывания термовыключателя (без самовозврата) – Имеет исполнение с четырьмя проводами, спрессованными фастонами.

Выводы контактов выполнены изолированными гибкими проводами сечением 0, ТАБ-Т это термопредохранитель и реле температуры в одном корпусе, аналог для замены ТАБ-Т Хотя там в первую очередь нужно проверять таймер оттайки, вот он на фото запчастини для холодильників Indesit. На таймере есть кнопка для принудительной оттайки. Расположен таймер в морозильной камере. Оценка +1. Цитата. holodaldo. Предохранитель ТАБ-Т-2 для холодильников Стинол Артикул: Х 4-х контактный, без колодки Температура срабатывания на размыкание цепи + 10°C, температура аварийного размыкания 72°С.

Напряжение питания: 3А/ В. Предохранитель предназначен для регулировки работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы (функция.

ТАБ-Т-2 используется для регулирования работы системы оттайки испарителя (функция датчика-реле температуры) и для аварийного размыкания электрической цепи нагревателей системы NO-FROST в случае неисправности элементов схемы Доставка: Россия от Р.

PDF, EPUB, doc, PDF sony mhc-ec69 схема

Циклоферон инструкция по применению: показания, противопоказания, побочное действие – описание Cycloferon таб., покр. кишечнорастворимой оболочкой, 150 мг: 10, 20 или 50 шт. (3791)

Препарат принимают внутрь 1 раз/сут за 30 мин до еды, не разжевывая, запивая 1/2 стакана воды.

Доза препарата зависит от возраста пациента.

Взрослым и детям старше 12 лет назначают по 450-600 мг (3-4 таб.) на прием.

Детям в возрасте 7-11 лет назначают по 300-450 мг (2-3 таб.) на прием.

Детям в возрасте 4-6 лет назначают по 150 мг (1 таб.) на прием.

Повторный курс целесообразно проводить через 2-3 недели после окончания первого курса.

Взрослые

При лечении гриппа и острых респираторных заболеваний препарат следует принимать на 1, 2, 4, 6, 8-е сутки (курс лечения – 20 таб.). Лечение необходимо начинать при первых симптомах заболевания. При тяжелом течении гриппа в 1-й день следует принять 6 таб. препарата. При необходимости дополнительно проводят симптоматическую терапию (жаропонижающие, анальгезирующие, отхаркивающие средства).

При герпетической инфекции препарат следует принимать на 1, 2, 4, 6, 8, 11, 14, 17, 20, 23-и сутки (курс лечения – 40 таб.) Лечение наиболее эффективно при появлении первых симптомов заболевания.

Дети в возрасте 4 лет и старше

При лечении гриппа и острых респираторных заболеваний препарат следует принимать в дозе, соответствующей возрасту, на 1, 2, 4, 6, 8, 11, 14, 17, 20, 23-и сутки. Курс лечения составляет от 5 до 10 приемов, в зависимости от тяжести состояния и выраженности клинических симптомов.

При лечении герпетической инфекции препарат следует принимать на 1, 2, 4, 6, 8, 11, 14-е сутки. Курс лечения варьирует в зависимости от тяжести состояния и выраженности клинических симптомов.

Для экстренной неспецифической профилактики гриппа и острых респираторных заболеваний (при непосредственном контакте с больными гриппом и ОРЗ другой этиологии, в период эпидемии гриппа)

препарат следует принимать на 1, 2, 4, 6, 8-е сутки. Далее следует сделать перерыв на 72 ч (3 суток) и продолжить курс на 11, 14, 17, 20, 23-и сутки. Общий курс составляет от 5 до 10 приемов.

Мильбемакс таблетки для кошек от 2 до 8 кг, уп. 2 таб.

Мильбемакс  для профилактики и лечения гельминтозов у кошек

ИНСТРУКЦИЯ

по применению Мильбемакса (Milbemax) для дегельминтизации кошек

СОСТАВ И ФОРМА ВЫПУСКА Комплексный препарат, содержащий в качестве действующих веществ мильбемицина оксим и празиквантел, а также вспомогательные компоненты. Выпускают в виде таблеток для котят и молодых кошек с содержанием в 1 таблетке 4 мг мильбемицина оксима и 10 мг празиквантела, а также в виде таблеток для взрослых кошек с содержанием в 1 таблетке 16 мг мильбемицина оксима и 40 мг празиквантела. По внешнему виду представляет собой таблетки удлиненной формы со скошенными краями и поперечной насечкой с одной стороны. Таблетки для котят и молодых кошек покрыты оболочкой розового цвета и имеют оттиски «ВС» и «NA». Таблетки для взрослых кошек покрыты оболочкой красного цвета и имеют оттиски «КК» и «NA». Расфасовывают по 2 таблетки в блистеры из фольги, которые упаковывают в картонные коробки.

ФАРМАКОЛОГИЧЕСКИЕ СВОЙСТВА Мильбемицина оксим и празиквантел проявляют синергизм действия и в комплексе обладают широким спектром действия на личиночные и половозрелые формы нематод и цестод. Мильбемицина оксим, входящий в состав препарата, относится к группе макроциклических лактонов, выделяемых в результате ферментативной деятельности Streptomyces hygroscopicus var. Aureolacrimosus. Мильбемицина оксим активен в отношении нематод, паразитирующих в желудочно-кишечном тракте кошек, а также личинок нематоды Dirofilaria immitis. Механизм действия мильбемицина обусловлен повышением проницаемости клеточных мембран для ионов хлора, что приводит к сверхполяризации мембран клеток нервной и мышечной ткани, параличу и гибели паразита. Максимальная концентрация мильбемицина оксима в плазме крови достигается через 2 часа. Из организма соединение выводится в основном в неизмененном виде, период полувыведения составляет около 13 часов после перорального введения препарата. Празиквантел является ацилированным производным пиразин-изохинолина, обладает выраженным действием против цестод и нематод. Повышая проницаемость клеточных мембран паразита для ионов кальция, вызывает деполяризацию мембран, сокращение мускулатуры и разрушение тегумента, что приводит к гибели паразита и способствует его выведению из организма животного. Максимальная концентрация празиквантела в плазме крови достигается через 1 час. Из организма соединение выводится в основном в виде неактивных метаболитов с мочой, период полувыведения составляет около 3 часов после перорального введения препарата. Мильбемакс относится к группе умеренно опасных для теплокровных животных соединений, в рекомендуемых дозах не оказывает сенсибилизирующего, эмбриотоксического и тератогенного действия. Хорошо переносится кошками разных пород и возрастов. Препарат токсичен для рыб и других гидробионтов.

ПОКАЗАНИЯ Назначают с профилактической и лечебной целью для дегельминтизации кошек при нематодозах (токсокароз, анкилостомоз) и цестодозах (эхинококкоз, дипилидиоз, тениозы).

ДОЗЫ И СПОСОБ ПРИМЕНЕНИЯ Мильбемакс задают кошкам внутрь однократно, индивидуально в утреннее кормление с небольшим количеством корма или вводят принудительно на корень языка после приема корма в минимальной терапевтической дозе 2 мг мильбемицина оксима и 5 мг празиквантела на 1 кг веса животного.

Дозировка мильбемакса в соответствии с весом кошки

Вес кошки Мильбемакс таблетки для котят и молодых кошек Мильбемакс таблетки для взрослых кошек
0,5 – 1 кг ½ таблетки (розового цвета)
1 – 2 кг 1 таблетка (розового цвета)
2 – 4 кг ½ таблетки (красного цвета)
4 – 8 кг 1 таблетка (красного цвета)
8 – 12 кг 1½ таблетки (красного цвета)

 

Необходимо следить за поедаемостью препарата. Предварительной голодной диеты и применения слабительных средств не требуется. Мильбемакс можно применять котятам с 6-недельного возраста. Беременным кошкам препарат используют в последнюю треть периода беременности, лактирующим – через 2 – 3 недели после окота под наблюдением ветеринарного врача. Профилактическую дегельминтизацию рекомендуется проводить ежеквартально, а также перед вакцинацией и случкой в вышеуказанных дозах.

ПОБОЧНЫЕ ДЕЙСТВИЯ У животных гиперчувствительных к компонентам мильбемакса возможны аллергические реакции. При правильном использовании и дозировке побочные явления, как правило, не наблюдаются. При передозировке у некоторых кошек может наблюдаться тремор, симптомы которого самопроизвольно исчезают в течение суток и не требуют применения лекарственных средств.

ПРОТИВОПОКАЗАНИЯ Повышенная индивидуальная чувствительность к препарату. Запрещается назначение мильбемакса котятам моложе 6-недельного возраста, кошкам в первые две трети периода беременности, а также больным инфекционными болезнями и выздоравливающим животным. Не рекомендуется использовать кошкам массой менее 0,5 кг. Не следует применять животным с нарушениями функции почек и печени.

ОСОБЫЕ УКАЗАНИЯ Особые меры предосторожности не предусмотрены.

УСЛОВИЯ ХРАНЕНИЯ С предосторожностью по списку Б. В сухом, темном и недоступном для детей и животных месте при температуре от 0 до 30 °С. Срок годности – 3 года. Срок хранения после вскрытия блистера – 6 месяцев.

ПРОИЗВОДИТЕЛЬ Новартис Санте Анимал С.А.С. (Novartis Sante Animal S.A.S), Франция. Произведено по заказу Новартис Энимал Хелс (Novartis Animal Health d.o.o.), Словения.

ПОСТАВЩИК ООО «Новартис Консьюмер Хелс», Россия.

Информация по условиям доставки.

Схемы фильтрации

Схемы фильтрации

Один из основных сильные стороны TIBCO Spotfire – это способность фильтровать ваши data, следовательно, чтобы контролировать, какие данные должны быть видны и использоваться в некоторых вычислениях. Это означает, что вы можете отображать / скрывать данные для определенных категорий, изменять временной диапазон, на который нужно смотреть, шаг за шагом через последовательность значений время и т. д.

У вас есть возможность добавить свои схемы фильтрации, которые можно применить к анализу за страницу или за визуализацию.Это дает вам полную свободу контролировать, какие страницы и визуализации будут влиять друг на друга. Ты можешь настроить схемы фильтрации для работы с любой комбинацией визуализаций и / или страниц в вашем анализе. Например, вы можете сохранить все визуализации на всех связанных страницах, используя одну и ту же схему фильтрации для всех их, или вы можете указать разные схемы фильтрации для всех визуализации в анализе или любую их комбинацию две крайности.См. Ограничение Что показано в визуализациях, чтобы узнать, как настроить визуализацию использовать схему фильтрации, отличную от схемы фильтрации, используемой на страница.

Тип фильтра является частью настроек фильтра в схеме фильтрации. Это и другие настройки фильтра контролируются через Фильтр. Свойства схемы. Это достигается через контекстное меню в фильтрах. панель. Выбор того, какие фильтры отображаются на странице, напротив, указывается на странице, через Организовать Параметр «Фильтры» в контекстном меню.

  1. Выбрать Правка> Свойства документа.

  2. Перейти на вкладку Схемы фильтрации.

  3. Нажмите Новый ….

  4. Тип имя и нажмите ОК.

  1. Марка убедитесь, что меню схемы фильтрации отображается вверху фильтров панель.

    Комментарий: Если меню схемы фильтрации было скрыто, его можно отобразить, выбрав Правка> Свойства документа> вкладка Схемы фильтрации и установите флажок box Показать меню схемы фильтрации на панели «Фильтры».

  2. Нажмите в меню схемы фильтрации.

  3. Выбрать желаемая схема фильтрации.

См. также:

Что такое фильтр?

kitty.conf – котенок

kitty обладает широкими возможностями настройки, от сочетаний клавиш до рендеринг кадров в секунду.См. Ниже обзор всех настроек. возможности.

Вы можете открыть файл конфигурации в kitty, нажав ctrl + shift + f2 . Вы можете перезагрузить файл конфигурации в kitty, нажав ctrl + shift + f5 или отправка котенку сигнала SIGUSR1 . Вы также можете отобразите текущую конфигурацию, нажав клавишу ctrl + shift + f6 .

kitty ищет файл конфигурации в каталогах конфигурации ОС (обычно ~ / .config / kitty / kitty.conf ), но вы можете передать определенный путь через kitty --config или используйте KITTY_CONFIG_DIRECTORY переменная окружения. См. Подробные сведения о параметре kitty --config .

Комментарии могут быть добавлены в файл конфигурации в виде строк, начинающихся с # персонаж. Это работает, только если символ # является первым символом. в линии.

Вы можете включить вторичные файлы конфигурации с помощью директивы include .Если вы используете относительный путь для включения, он разрешается относительно расположение текущего файла конфигурации. Обратите внимание, что переменные среды расширен, поэтому $ {USER} .conf становится name.conf , если ПОЛЬЗОВАТЕЛЬ = имя . Например:

Примечание

Подсветка синтаксиса для kitty.conf в vim доступна через vim-kitty.

kitty имеет очень мощное управление шрифтами. Вы можете настроить отдельные шрифты и даже указать специальные шрифты для определенных символов.

font_family, bold_font, italic_font, bold_italic_font
 font_family monospace
bold_font авто
italic_font авто
bold_italic_font auto
 

Вы можете указать разные шрифты для полужирного / курсивного / полужирного курсива. Чтобы получить полный список поддерживаемых шрифтов, используйте команду kitty list-fonts . По умолчанию они выводятся автоматически системой шрифтов ОС. Параметр их вручную полезно для семейств шрифтов, которые имеют много вариантов веса, например Книжный, средний, толстый и т. Д.Например:

 font_family Оператор Моно Книга
bold_font Оператор Моно Средний
italic_font Оператор Моно Книга Курсив
bold_italic_font Оператор Моно Средний Курсив
 
font_size

Размер шрифта (в пунктах)

force_ltr

kitty не поддерживает BIDI (двунаправленный текст), однако для сценариев RTL, слова автоматически отображаются в RTL. То есть в сценарии RTL слова «ПРИВЕТ, МИР» отображаются у кошечки как «МИР ПРИВЕТ», и если вы попытаетесь выбрать подстрока RTL-образной строки, вы получите символ, который будет там была строка LTR.Например, если предположить, что слово на иврите ירושלים, выбирая символ, который на экране выглядит как ם на самом деле записывает в буфер выбора символ י. поведение котенка по умолчанию полезно в сочетании с фильтром для изменения порядка слов, однако, если вы хотите манипулировать глифами RTL, с этим может быть очень сложно работать, поэтому этот предусмотрена возможность его выключения. Кроме того, эту опцию можно использовать с программа командной строки GNU FriBidi, чтобы получить поддержку BIDI, потому что она заставит котенка всегда обрабатывать текст как LTR, что FriBidi ожидает терминалы.

Adjust_line_height, adjust_column_width
 adjust_line_height 0
Adjust_column_width 0
 

Измените размер каждого персонажа, отображаемого котенком. Вы можете использовать либо числа, которые интерпретируются как пиксели или проценты (число, за которым следует%), которые интерпретируются как проценты от неизмененных значений. Вы можете использовать отрицательные пиксели или проценты менее 100% для уменьшения размеров (но это может вызывают артефакты рендеринга).

Adjust_baseline

Отрегулируйте вертикальное выравнивание текста (высоту в ячейке, на которой позиционируется).Вы можете использовать либо числа, которые интерпретируются как пиксели, либо проценты (число, за которым следует%), которые интерпретируются как процент от высота строки. Положительное значение перемещает базовую линию вверх, а отрицательное значение перемещает их вниз. Позиции подчеркивания и зачеркивания настроены. соответственно.

symbol_map
 symbol_map U + E0A0-U + E0A3, U + E0C0-U + E0C7 Powerline Символы
 

Сопоставить указанные кодовые точки Unicode с конкретным шрифтом. Полезно, если вам нужно специальный рендеринг для некоторых символов, например для Powerline.Избегает необходимости исправленные шрифты. Каждая кодовая точка юникода указывается в виде U + <кодовая точка в шестнадцатеричном формате> . Вы можете указать несколько кодовых точек, разделенных запятыми и диапазоны разделены дефисом. symbol_map Сама может быть указана несколько раз. Синтаксис:

 кодовых точек symbol_map Имя семейства шрифтов
 
disable_ligatures

Выберите способ обработки многосимвольных лигатур. По умолчанию всегда их отображать.Вы можете сказать котенку, чтобы он не отображал их, когда курсор над ними с помощью курсора , чтобы упростить редактирование, или котенок никогда не отображать их вообще, используя всегда , если они вам не нравятся. Лигатура стратегия может быть установлена ​​для каждого окна либо с помощью средства удаленного управления котенком или определив для него ярлыки в kitty.conf, например:

 карта alt + 1 disable_ligatures_in всегда активна
карта alt + 2 disable_ligatures_in все никогда
карта alt + 3 disable_ligatures_in курсор табуляции
 

Обратите внимание, что это относится к программным лигатурам, обычно реализуемым с использованием calt Функция OpenType.Для отключения общих лигатур используйте font_features настройка.

font_features

Выберите, какие именно функции OpenType нужно включить или отключить. Это полезно как некоторые шрифты могут иметь полезные функции в терминале. Например, Фира Код Retina включает в себя дискреционную функцию ноль , которая в этом шрифте изменяет внешний вид нуля (0), чтобы его было легче различить от Ø. Fira Code Retina также включает другие дискреционные функции, известные как Стилистические наборы с тегами с ss01 по ss20 .

Точный синтаксис для использования отдельных функций см. В Документация Harfbuzz.

Обратите внимание, что этот код индексируется именем PostScript, а не шрифтом. семья. Это позволяет вам определять очень точные настройки функций; например ты можешь отключить функцию курсивным шрифтом, но не обычным шрифтом.

В Linux они сначала считываются из базы данных FontConfig, а затем из этого, применяются настройки, поэтому их можно настраивать в одном центральном месте.

Чтобы получить имя PostScript для шрифта, используйте kitty + list-fonts --psnames :

 $ kitty + шрифты-списки --psnames | grep Fira
Код Фира
Полужирный шрифт Fira (FiraCode-Bold)
Fira Code Light (FiraCode-Light)
Fira Code Medium (FiraCode-Medium)
Стандартный код Fira (FiraCode-Regular)
Fira Code Retina (FiraCode-Retina)
 

В скобках указано имя PostScript.

Включить альтернативный ноль и цифры в старом стиле:

 font_features FiraCode-Retina + ноль + онум
 

Включить только альтернативный ноль:

 font_features FiraCode-Retina + ноль
 

Отключите обычные лигатуры, но оставьте функцию calt , которая (в этом шрифт) разбивает однообразие:

 font_features TT2020StyleB-Regular -liga + calt
 

В сочетании с force_ltr вы можете отключить арабское формирование целиком и просматривайте их изолированные формы только в том случае, если они отображаются в документе.Вы можете сделать это, например:

 font_features UnifontMedium + изол -medi -fina -init
 
box_drawing_scale
 box_drawing_scale 0,001, 1, 1,5, 2
 

Измените размеры линий, используемых для символов Unicode для рисования прямоугольника. значения указаны в пунктах. Они будут масштабированы DPI монитора для получения пикселя. стоимость. Должно быть четыре значения, соответствующих тонкому, нормальному, толстому и очень толстые линии.

курсор

Цвет курсора по умолчанию

cursor_text_color
 cursor_text_color # 111111
 

Выберите цвет текста под курсором.Если вы хотите, чтобы он отображался с цвет фона ячейки внизу вместо этого используйте специальное ключевое слово: фон

cursor_shape

Форма курсора может быть одной из (блок, луч, подчеркивание). Обратите внимание, что при перезагрузке конфигурации это будет изменено только в том случае, если форма курсора не была установлена ​​программой, запущенной в терминале.

cursor_beam_thickness
 толщина_ луча курсора 1,5
 

Определяет толщину курсора луча (в пунктах)

cursor_underline_thickness
 cursor_underline_thickness 2.0
 

Определяет толщину подчеркивания курсора (в пунктах)

cursor_blink_interval

Интервал (в секундах), с которым мигает курсор. Установите в ноль, чтобы отключить мигает. Отрицательные значения означают использование системы по умолчанию. Обратите внимание, что числа меньше чем repaint_delay будет ограничен до repaint_delay .

cursor_stop_blinking_after
 cursor_stop_blinking_after 15.0
 

Остановить мигание курсора через указанное количество секунд клавиатуры бездействие.Установите на ноль, чтобы никогда не переставать мигать.

mouse_hide_wait

Скрыть курсор мыши через указанное количество секунд, когда мышь не использовал. Установите в ноль, чтобы отключить скрытие курсора мыши. Установите отрицательное значение на немедленно скрыть курсор мыши при наборе текста. Отключено по умолчанию в macOS как заставить его работать надежно с постоянно меняющимся морем ошибок, которым является Cocoa слишком много усилий.

url_color, url_style
 url_color # 0087bd
url_style кудрявый
 

Цвет и стиль выделения URL-адресов при наведении указателя мыши. url_style банка быть одним из: none, single, double, curly

open_url_with

Программа, с помощью которой можно открывать URL-адреса, по которым щелкнули. Особая ценность default означает использование обработчика URL по умолчанию операционной системы.

url_prefixes
 url_prefixes http https файл ftp gemini irc gopher mailto news git
 

Набор префиксов URL-адресов для поиска при обнаружении URL-адреса под курсором мыши.

detect_urls

Обнаружение URL-адресов под мышкой. Обнаруженные URL-адреса выделяются подчеркиванием и курсор мыши становится над ними рукой. Даже если эта опция отключена, URL-адреса все еще кликабельны.

url_excluded_characters

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

copy_on_select

Копировать в буфер обмена или частный буфер при выборе.С этим установленным на буфер обмена , просто выделение текста мышью приведет к тому, что текст будет скопировать в буфер обмена. Полезно на таких платформах, как macOS, на которых нет понятие первичного отбора. Вместо этого вы можете указать имя, например a1 для вместо этого скопируйте в личный буфер котенка. Сопоставьте ярлык с paste_from_buffer действие для вставки из этого частного буфера. Например:

 карта cmd + shift + v paste_from_buffer a1
 

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

strip_trailing_spaces
 strip_trailing_spaces никогда
 

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

select_by_word_characters
 select_by_word_characters @ -. / _ ~? & =% + #
 

Символы считаются частью слова при двойном щелчке.В дополнение к этим символы любой символ, помеченный как буквенно-цифровой символ в база данных Unicode будет сопоставлена.

click_interval

Интервал между последовательными щелчками для обнаружения двойных / тройных щелчков (в секунд). Для отрицательных чисел вместо этого будет использоваться системное значение по умолчанию, если таковое имеется, или откат к 0,5.

focus_follows_mouse

Установить активное окно в окно под мышью при перемещении мыши вокруг

pointer_shape_when_grabbed
 pointer_shape_when_grabbed arrow
 

Форма указателя мыши, когда программа, запущенная в терминале, захватывает мышь.Допустимые значения: стрелка , балка и рука

default_pointer_shape
 default_pointer_shape луч
 

Форма указателя мыши по умолчанию. Допустимые значения: стрелка , балка и ручная

pointer_shape_when_dragging
 указатель_ формы_ когда_ тянущаяся балка
 

Форма указателя мыши по умолчанию при перетаскивании по тексту.Допустимые значения являются: стрелка , балка и рука

Действия мыши

Кнопки мыши можно переназначить для выполнения произвольных действий. Синтаксис для так поступает:

 mouse_map имя кнопки режимы типа события действие
 

Где имя кнопки – одно из слева , посередине , справа или b1 ... b8 с добавленными модификаторами клавиатуры, например: ctrl + shift + left относится к удержанию ctrl + shift при щелчке левой кнопкой мыши.В номер b1 ... b8 может использоваться для обозначения до восьми кнопок мыши.

тип события – это один пресс , выпуск , двойное нажатие , тройное нажатие , щелкните и дважды щелкните . Режимы указывает, является ли действие выполняется, когда программа, работающая в терминале, захватывает мышь, или нет. Он может иметь одно или несколько значений: захвачено, не захвачено . схватили относится к тому моменту, когда программа, запущенная в терминале, запросила события мыши.Обратите внимание, что события щелчка и двойного щелчка имеют задержку click_interval для устранения неоднозначности двойного и тройного нажатия.

Вы можете запустить kitty с параметром командной строки kitty --debug-input чтобы увидеть события мыши. См. Встроенные действия ниже, чтобы понять, что возможно.

Если вы хотите отменить отображение действия, сопоставьте его с no-op . Например, чтобы отключить открытие URL-адресов простым щелчком:

 mouse_map левая кнопка мыши не захватывает, не работает
 

Примечание

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

Щелкните ссылку под курсором мыши, когда выделение не создано
 mouse_map щелчок левой кнопкой мыши без привязки mouse_click_url_or_select
 
Щелкните ссылку под курсором мыши, когда выделение не создается, даже если он был захвачен
 mouse_map shift + левый щелчок с захватом, без захвата mouse_click_url_or_select
 
Щелкните ссылку под курсором мыши
 mouse_map ctrl + shift + левая разблокировка захвачена, не захвачена mouse_click_url
 

Вариант с ctrl + shift присутствует, потому что версия на основе простого щелчка имеет неизбежную задержку click_interval , чтобы отделить щелчки от двойных щелчков.

Отменить пресс-событие для перехода по ссылке
 mouse_map ctrl + shift + нажатие влево захвачено discard_event
 

Предотвратить отправку этого события нажатия в программу, захватившую мышь, поскольку соответствующее событие выпуска используется для открытия URL-адреса.

Вставить из основного выделения
 mouse_map средняя версия без захвата paste_from_selection
 
Начать выделение текста
 mouse_map левое нажатие не закреплено mouse_selection нормальное
 
Начать выделение текста в прямоугольнике
 mouse_map ctrl + alt + нажатие левой кнопки мыши без захвата прямоугольника mouse_selection
 
Выберите слово
 mouse_map левое двойное нажатие незанятое слово mouse_selection
 
Выберите строку
 mouse_map левое тройное нажатие, свободная строка mouse_selection
 

Выбрать всю строку

Выбрать линию от точки
 mouse_map ctrl + alt + тройное нажатие влево без захвата mouse_selection line_from_point
 

Выбрать от точки с щелчком до конца строки

Расширить текущий выбор
 mouse_map нажатие правой кнопки мыши без ограничений mouse_selection extension
 

Если вы хотите переместить только конец выделения, а не ближайшую границу, используйте move-end вместо extension.

Вставить из первичного выбора, даже когда был схвачен
 mouse_map shift + средний выпуск без захвата, захваченный paste_selection
 
Начинайте выделять текст, даже когда его схватили
 mouse_map shift + нажатие влево без захвата, захвачено mouse_selection нормально
 
Начинайте выделять текст в прямоугольнике, даже если его схватили
 mouse_map shift + ctrl + alt + нажатие влево без захвата, захваченный прямоугольник mouse_selection
 
Выбрать слово, даже если его схватили
 mouse_map shift + левое двойное нажатие не закреплено, схвачено слово mouse_selection
 
Выбирать линию, даже если ее схватили
 mouse_map shift + тройное нажатие влево без захвата, захваченная строка mouse_selection
 

Выбрать всю строку

Выбирать линию от точки, даже если ее захватили
 mouse_map shift + ctrl + alt + левое тройное нажатие откреплено, захвачено mouse_selection line_from_point
 

Выбрать от точки с щелчком до конца строки

Расширить текущее выделение даже при захвате
 mouse_map shift + нажатие правой кнопки мыши снято, захвачено mouse_selection extension
 
repaint_delay

Задержка (в миллисекундах) между обновлениями экрана.При его уменьшении увеличивается частота кадров в секунду. (FPS) за счет увеличения загрузки ЦП. Значение по умолчанию дает ~ 100 FPS, которого более чем достаточно для большинства применений. Обратите внимание, что для достижения 100 FPS вы должны либо установить sync_to_monitor на no, либо использовать монитор с высокой частотой обновления. Кроме того, чтобы минимизировать задержку при наличии ожидающих ввода для обработки, repaint_delay игнорируется.

input_delay

Задержка (в миллисекундах) перед вводом из программы, запущенной в терминале, составляет обработанный.Обратите внимание, что его уменьшение увеличит отзывчивость, но также увеличивает загрузку ЦП и может вызвать мерцание в полноэкранных программах, которые перерисовывают весь экран в каждом цикле, потому что котенок работает так быстро, что частичный экран обновления будут нарисованы.

sync_to_monitor

Экран синхронизации обновляет частоту обновления монитора. Это предотвращает разрыв (https://en.wikipedia.org/wiki/Screen_tearing) при прокрутке. Однако это ограничивает скорость рендеринга частотой обновления вашего монитора.С очень высоким скорость мыши / высокая частота повторения клавиатуры, вы можете заметить небольшую задержку ввода. Если это так, установите для этого параметра значение «нет».

enable_audio_bell

Включение / отключение звукового звонка. Полезно в условиях, требующих тишины.

visual_bell_duration

Продолжительность визуального звонка. Мигает экран, когда раздается звонок для указанного количество секунд. Установите в ноль, чтобы отключить.

window_alert_on_bell

Просьба обратить внимание на звонок.Заставляет значок док-станции подпрыгивать на macOS или Вспышка панели задач на Linux.

bell_on_tab

Показывать значок колокольчика на вкладке, если колокольчик появляется в одном из окон на вкладке и окно не является текущим окном

command_on_bell

Программа для запуска при звонке. Переменная среды KITTY_CHILD_CMDLINE может использоваться для запуска программы в окне, в котором произошел звонок.

Remember_window_size, initial_window_width, initial_window_height
 Remember_window_size да
initial_window_width 640
initial_window_height 400
 

Если включено, размер окна будет запоминаться, чтобы новые экземпляры котенка будет иметь тот же размер, что и предыдущий экземпляр. Если отключено, окно будет изначально имеют размер, заданный параметром initial_window_width / height, в пикселях. Ты может использовать суффикс «c» для значений ширины / высоты, чтобы они интерпретировались как количество ячеек вместо пикселей.

enabled_layouts

Включенные макеты окон. Список имен макетов, разделенных запятыми. Специальный значение все означает все макеты. Первый из перечисленных макетов будет использоваться в качестве макет запуска. В конфигурации по умолчанию все макеты расположены в алфавитном порядке. Для список доступных макетов см. в разделе «Макеты».

window_resize_step_cells, window_resize_step_lines
 window_resize_step_cells 2
window_resize_step_lines 2
 

Размер шага (в единицах ширины / высоты ячейки) для использования при изменении размера окон.Значение ячеек используется для изменения размера по горизонтали, а значение линий – для вертикального. изменение размера.

window_border_width
 window_border_width 0,5pt
 

Ширина границ окна. Может быть в пикселях (px) или pts (pt). Ценности в pts будет округлено до ближайшего числа пикселей в зависимости от разрешения экрана. Если не указано иное, предполагается, что единицей измерения являются баллы. Обратите внимание, что границы отображаются только когда видно более одного окна. Они предназначены для разделения нескольких окна.

draw_minimal_borders

Нарисуйте только минимально необходимые границы. Это означает, что только необходимый минимум отрисовываются границы для неактивных окон. Это только границы, которые разделяют неактивное окно от соседа. Обратите внимание, что установка ненулевого поля окна отменяет это и заставляет рисовать все границы.

window_margin_width

Поле окна (в пунктах) (пустая область за пределами границы). Одно значение устанавливает все четыре стороны.Два значения задают вертикальную и горизонтальную стороны. Три значения установить сверху, по горизонтали и снизу. Четыре значения устанавливаются сверху, справа, снизу и слева.

single_window_margin_width
 single_window_margin_width -1
 

Поле окна (в пунктах), используемое, когда видно только одно окно. Отрицательный values ​​приведет к тому, что вместо этого будет использоваться значение window_margin_width . А одно значение устанавливает все четыре стороны. Два значения устанавливают вертикальное и горизонтальное стороны.Установите три значения: верхнее, горизонтальное и нижнее. Четыре значения установлены сверху, справа, снизу и слева.

window_padding_width

Отступ окна (в пунктах) (пустая область между текстом и границей окна). Одно значение устанавливает все четыре стороны. Два значения устанавливают вертикальное и горизонтальное стороны. Установите три значения: верхнее, горизонтальное и нижнее. Четыре значения установлены сверху, справа, снизу и слева.

location_strategy
 Placement_strategy center
 

Когда размер окна не является точным кратным размеру ячейки, площадь ячейки Окно терминала будет иметь дополнительные отступы по бокам.Вы можете контролировать как это дополнение распространяется с этой опцией. Используя значение center означает, что зона соты будет размещена по центру. Ценность вверху слева означает, что заполнение будет только на нижнем и правом краях.

active_border_color
 active_border_color # 00ff00
 

Цвет границы активного окна. Установите значение none, чтобы не рисовать границы вокруг активного окна.

inactive_border_color
 inactive_border_color #cccccc
 

Цвет границы неактивных окон

bell_border_color
 bell_border_color # ff5a00
 

Цвет границы неактивных окон, в которых прозвучал звонок

inactive_text_alpha

Затемнить текст в неактивных окнах на указанную величину (число от нуля и один, причем ноль полностью затенен).

hide_window_decorations
 hide_window_decorations нет
 

Скрыть оформление окна (строку заголовка и границы окна) с помощью да . На macOS, только заголовок можно использовать, чтобы скрыть только заголовок. Будь это работает, и какой именно эффект это имеет, зависит от оконного менеджера / работы система. Обратите внимание, что последствия изменения этого параметра при перезагрузке конфигурации не определены.

resize_debounce_time

Время (в секундах) ожидания перед перерисовкой экрана при наступлении события изменения размера. получили.На таких платформах, как macOS, где операционная система отправляет события соответствующий началу и концу изменения размера, это число игнорируется.

resize_draw_strategy
 resize_draw_strategy статический
 

Выберите, как котенок будет рисовать окно в процессе изменения размера. Ценность static означает рисование текущего содержимого окна, в основном без изменений. Ценность масштаба означает рисовать текущее содержимое окна в масштабе. Ценность blank означает рисовать пустое окно.Значение размер означает, что размер окна в ячейках.

resize_in_steps

Изменить размер окна ОС по шагам, равным размерам ячеек, а не обычным точность пикселей. В сочетании с initial_window_width и initial_window_height в количестве ячеек, эту опцию можно использовать для сохранения поля как можно меньше при изменении размера окна ОС. Обратите внимание, что это в настоящее время не работает на Wayland.

confirm_os_window_close
 confirm_os_window_close 0
 

Запрашивать подтверждение при закрытии окна ОС или вкладки, имеющей хотя бы это количество окон кошачьих в нем.Нулевое значение отключает подтверждение. Этот подтверждение также применяется к запросам на закрытие всего приложения (все ОС windows через действие выхода).

tab_bar_edge

С какого края отображать панель вкладок, сверху или снизу

tab_bar_margin_width

Поле слева и справа от панели вкладок (в пунктах)

tab_bar_margin_height
 tab_bar_margin_height 0,0 0,0
 

Поле выше и ниже панели вкладок (в пунктах).Первое число – это поле между краем окна ОС и панелью вкладок и вторым число – это расстояние между панелью вкладок и содержимым текущего таб.

tab_bar_style

Стиль панели вкладок может быть одним из: исчезновение , разделитель , Powerline или скрытый . В стиле затухания края каждой вкладки размываются. в цвет фона, в стиле разделителя вкладки разделяются настраиваемый разделитель, а на линии электропередачи вкладки отображаются в виде непрерывной линии.Если вы используете скрытый стиль, вы можете создать сопоставление для select_tab действие, которое представляет вам список вкладок и позволяет легкий переход на вкладку.

tab_bar_min_tabs

Минимальное количество вкладок, которое должно существовать до отображения панели вкладок

tab_switch_strategy
 tab_switch_strategy предыдущий
 

Алгоритм, используемый при переключении на вкладку, когда текущая вкладка закрыта.В по умолчанию предыдущий переключится на последнюю использованную вкладку. Ценность left переключится на вкладку слева от закрытой вкладки. Ценность справа переключится на вкладку справа от закрытой вкладки. Ценность последний переключится на крайнюю правую вкладку.

tab_fade

Управляет переходом каждой вкладки на задний план при использовании перехода для tab_bar_style . Каждое число – это альфа (от нуля до единицы), контролирует, насколько соответствующая ячейка уходит на задний план, с нулевым быть без увядания, а одно – с полным исчезновением.Вы можете изменить количество используемых ячеек добавляя / удаляя записи в этот список.

tab_separator

Разделитель между вкладками на панели вкладок при использовании разделителя в качестве tab_bar_style .

tab_powerline_style
 tab_powerline_style угловой
 

Стиль разделителя Powerline между вкладками на панели вкладок при использовании powerline как tab_bar_style , может быть одним из: угловой , наклонная или круглая .

tab_activity_symbol

Некоторый текст или символ Юникода для отображения на вкладке, если на вкладке отображается окно, не имеет фокуса, имеет некоторую активность. Если вы хотите использовать начальные или конечные пробелы заключите текст в кавычки.

tab_title_template
 tab_title_template "{title}"
 

Шаблон для отображения заголовка вкладки. По умолчанию отображается только заголовок. если ты хотите также включить tab-index, используйте что-то вроде: {index}: {title} .Полезно, если у вас есть ярлыки для goto_tab N . если ты предпочитаете видеть индекс в виде надстрочного индекса, используйте {sup.index}. В кроме того, вы можете использовать {layout_name} для текущего имени макета, {num_windows} для количества окон во вкладке и {num_window_groups} для количества групп окон (не считая оверлейных окон) во вкладке. Обратите внимание, что форматирование выполняется с помощью механизма форматирования строк Python, поэтому вы можете использовать, например, {layout_name [: 2].upper ()} , чтобы отобразить только первые две буквы название макета, в верхнем регистре. Если вы хотите стилизовать текст, вы можете использовать стили директивы, например: {fmt.fg.red} красный {fmt.fg.default} нормальный {fmt.bg._00FF00} зеленый БГ {fmt.bg.normal} . Аналогично для полужирного и курсивного: {fmt.bold} полужирный {fmt.nobold} нормальный {fmt.italic} курсив {fmt.noitalic} .

active_tab_title_template
 active_tab_title_template нет
 

Шаблон для активных вкладок, если не указан, возвращается к tab_title_template .

active_tab_foreground, active_tab_background, active_tab_font_style, inactive_tab_foreground, inactive_tab_background, inactive_tab_font_style
 active_tab_foreground # 000
active_tab_background #eee
active_tab_font_style полужирный курсив
inactive_tab_foreground # 444
inactive_tab_background # 999
inactive_tab_font_style нормальный
 

Цвета и стили панели вкладок

tab_bar_background

Цвет фона панели вкладок.По умолчанию используется фон терминала цвет.

передний план, фон
 передний план #dddddd
фон # 000000
 

Цвета переднего и заднего плана

background_opacity

Непрозрачность фона. Число от 0 до 1, где 1 непрозрачно, а 0 полностью прозрачен. Это будет работать, только если поддерживается ОС (например, при использовании композитора под X11). Обратите внимание, что он устанавливает только фон прозрачность цвета в ячейках с таким же цветом фона, что и по умолчанию фон терминала.Это сделано для того, чтобы такие вещи, как строка состояния в vim, подсказки Powerline и т. д. по-прежнему выглядят хорошо. Но это означает, что если вы используете цвет тема с цветом фона в вашем редакторе, она не будет отображаться как прозрачный. Вместо этого вы должны изменить цвет фона по умолчанию в вашем kitty config и не использовать цвет фона в цветовой схеме редактора. Или используйте управляющие коды для установки цветов терминалов по умолчанию в сценарии оболочки для запуска ваш редактор. Имейте в виду, что использование значения меньше 1.0 – это (возможно, значительное снижение производительности.Если вы хотите динамически изменять прозрачность окна устанавливают dynamic_background_opacity на да (это отключено по умолчанию, так как это снижает производительность). Изменение этого параметра при перезагрузке конфигурация будет работать, только если dynamic_background_opacity был включен в исходном конфиге.

background_image

Путь к фоновому изображению. Должен быть в формате PNG.

background_image_layout
 background_image_layout мозаичный
 

Размещать или масштабировать фоновое изображение.

background_image_linear
 background_image_linear нет
 

При масштабировании фонового изображения следует ли использовать линейную интерполяцию.

dynamic_background_opacity
 dynamic_background_opacity нет
 

Разрешить динамическое изменение background_opacity , используя либо сочетания клавиш ( ctrl + shift + a> m и ctrl + shift + a> l ) или средства дистанционного управления.Изменение этот параметр путем перезагрузки конфигурации не поддерживается.

background_tint

Насколько тонировать фоновое изображение по цвету фона. Оттенок применяется только под текстовой областью, а не за полями / границами. Облегчает чтение текст. Тонирование выполняется с использованием текущего цвета фона для каждого окна. Этот параметр применяется, только если установлен background_opacity и прозрачный. окна поддерживаются или устанавливается background_image .

dim_opacity

Насколько затемнить текст, для которого установлен атрибут DIM / FAINT. Один означает отсутствие затемнения а ноль означает полностью затемненный (т.е. невидимый).

selection_foreground
 selection_foreground # 000000
 

Передний план для текста, выделенного с помощью мыши. Отсутствие значения означает уйти цвет без изменений.

selection_background
 selection_background #fffacd
 

Фон для текста, выделенного мышью.

Таблица цветов

256 цветов терминала. Всего 8 основных цветов, каждый цвет имеет тусклый и тусклый оттенок. яркая версия, за первые 16 цветов. Вы можете установить оставшиеся 240 цветов как от цвета16 до цвета255.

цвет0, цвет8
 цвет 0 # 000000
color8 # 767676
 

черный

цвет1, цвет9
 цвет1 # cc0403
color9 # f2201f
 

красный

цвет2, цвет10
 цвет2 # 19cb00
color10 # 23fd00
 

зеленый

цвет3, цвет11
 цвет3 # cecb00
color11 # fffd00
 

желтый

цвет4, цвет12
 цвет4 # 0d73cc
color12 # 1a8fff
 

синий

цвет5, цвет13
 цвет5 # cb1ed1
color13 # fd28ff
 

пурпурный

цвет6, цвет14
 цвет6 # 0dcdcd
color14 # 14ffff
 

голубой

цвет7, цвет15
 color7 #dddddd
color15 #ffffff
 

белый

mark1_foreground

Цвет для знаков типа 1

mark1_background

Цвет для знаков типа 1 (голубой стальной)

mark2_foreground

Цвет для знаков типа 2

mark2_background

Цвет для знаков типа 1 (бежевый)

mark3_foreground

Цвет для знаков типа 3

mark3_background

Цвет для знаков типа 3 (фиолетовый)

оболочка

Программа оболочки для выполнения.Значение по умолчанию. означает использовать любую оболочку устанавливается как оболочка по умолчанию для текущего пользователя. Обратите внимание, что в macOS, если вы измените это, вам может потребоваться добавить --login , чтобы оболочка запускается в интерактивном режиме и читает свои загрузочные rc-файлы.

редактор

Редактор консоли для использования при редактировании файла конфигурации котенка или аналогичных задач. А значение . означает использовать переменные среды VISUAL и EDITOR в этом порядок. Обратите внимание, что эта переменная среды должна быть установлена ​​не только в вашей оболочке. скрипты запуска, но общесистемные, иначе Китти его не увидит.

close_on_child_death

Закройте окно при выходе из дочернего процесса (оболочки). Если нет (по умолчанию), терминал будет оставаться открытым, когда дочерний элемент выйдет, пока еще есть процессы, выводимые на терминал (например, отключенные или фоновые процессы). Если да, окно закроется, как только дочерний процесс завершится. Обратите внимание, что установка значения «да» означает, что все фоновые процессы все еще используют терминал может потерпеть неудачу, потому что их stdout / stderr / stdin больше не работают.

allow_remote_control

Разрешить другим программам управлять котенком. Если вы включите это, другие программы могут контролировать все аспекты работы котенка, включая отправку текста в окна котенка, открытие новые окна, закрытие окон, чтение содержимого окон и т. д. Обратите внимание, что это работает даже через ssh-соединения. Вы можете разрешить любую программу работает внутри котенка, чтобы управлять им, с да или только программами, которые подключиться к сокету, указанному с помощью команды kitty --listen-on вариант строки, если вы используете значение socket-only .Последнее полезно, если вы хотите запретить запуск программ на удаленном компьютере через ssh из управляющий котенок. Изменение этого параметра путем перезагрузки конфигурации повлияет только на вновь созданные окна.

listen_on

Сообщите котенку, что нужно прослушивать указанный сокет unix / tcp для удаленного управления соединения. Обратите внимание, что это будет применяться ко всем экземплярам котят. Может быть переопределено флагом командной строки kitty --listen-on . Этот вариант принимает только сокеты UNIX, например unix: $ {TEMP} / mykitty или (в Linux) unix: @mykitty.Переменные среды расширены. Если {kitty_pid} присутствует затем он заменяется PID процесса котенка, в противном случае PID Процесс kitty добавляется к значению через дефис. Эта опция игнорируется если вы также не установили allow_remote_control для включения удаленного управления. Видеть справка для kitty --listen-on для получения более подробной информации. Изменение этой опции при перезагрузке конфига не поддерживается.

env

Укажите переменные среды для установки во всех дочерних процессах.Обратите внимание, что переменные среды расширяются рекурсивно, поэтому, если вы используете:

 env MYVAR1 = a
env MYVAR2 = $ {MYVAR1} / $ {HOME} / б
 

Значение MYVAR2 будет a / <путь к домашнему каталогу> / b .

update_check_interval

Периодически проверяйте, доступно ли обновление для котенка. Если обновление найдено, отображается системное уведомление о доступном обновлении. В по умолчанию проверять каждые 24 часа, установить на ноль – отключить.Изменение этой опции при перезагрузке конфига не поддерживается.

startup_session

Путь к файлу сеанса, который будет использоваться для всех экземпляров kitty. Может быть отменено с помощью параметра командной строки kitty --session для индивидуальных экземпляры. См. Подробности в разделе «Сеансы запуска» в документации по Kitty. Обратите внимание, что относительные пути интерпретируются относительно каталога конфигурации котенка. Переменные среды в пути раскрываются. Изменение этой опции путем перезагрузки конфиг не поддерживается.

clipboard_control
 clipboard_control запись-буфер обмена первичная запись
 

Разрешить программам, запущенным в kitty, читать и писать из буфера обмена. Ты можешь точно контролировать, какие действия разрешены. Набор возможных действий: запись-буфер обмена чтение-буфер обмена первичная запись первичная запись. По умолчанию разрешить запись в буфер обмена и первичный выбор. Обратите внимание, что включение функция чтения представляет собой угрозу безопасности, поскольку это означает, что любая программа, даже одна запущенный на удаленном сервере через SSH может читать ваш буфер обмена.

allow_hyperlinks

Управляющие последовательности гиперссылки на процесс (OSC 8). Если отключено OSC 8 escape-последовательностей игнорируются. В противном случае они станут интерактивными ссылками, по которым вы можете щелкнуть удерживая ctrl + shift и щелкая мышью. Особая ценность спросить означает, что котенок спросит, прежде чем переходить по ссылке.

срок

Значение устанавливаемой переменной среды TERM. Изменение этого может сломать многие терминальные программы, меняйте его только в том случае, если вы знаете, что делаете, а не потому, что вы прочитали несколько советов по переполнению стека, чтобы изменить его.Используется переменная TERM различными программами для получения информации о возможностях и поведении терминал. Если вы его измените, в зависимости от того, какие программы вы запускаете и как отличается терминал, на который вы его меняете, разные вещи от нажатия клавиш, к цветам, к различным дополнительным функциям могут не работать. Изменение этой опции путем перезагрузки конфигурация повлияет только на вновь созданные окна.

wayland_titlebar_color
 wayland_titlebar_color system
 

Изменение цвета заголовка окна котенка в системах Wayland с помощью клиента украшения боковых окон, такие как GNOME.Значение системы означает использование системный цвет по умолчанию, значение фона означает использование цвет фона текущего активного окна, и, наконец, вы можете использовать произвольный цвет, например # 12af59 или красный .

macos_titlebar_color
 macos_titlebar_color system
 

Измените цвет заголовка окна котенка в macOS. Ценность system означает использовать системный цвет по умолчанию, значение фон означает использовать цвет фона текущего активного окно и, наконец, вы можете использовать произвольный цвет, например # 12af59 или красный .ВНИМАНИЕ: этот вариант работает с использованием хака, так как нет надлежащего Какао API для этого. Он устанавливает цвет фона всего окна и делает заголовок прозрачен. Как таковой он несовместим с background_opacity . Если вы хотите использовать оба, вам, вероятно, лучше просто скрывая заголовок с помощью hide_window_decorations .

macos_option_as_alt

Используйте клавишу option как клавишу alt. Если установить значение no , котенок будет использовать собственная опция macOS + клавиша = поведение символа Юникода.Это сломается любые сочетания клавиш Alt + key в программах терминала, но вы можете использовать метод ввода Unicode в macOS. Вы можете использовать значения: слева , справа или оба для использования только левой, правой или обеих клавиш Option вместо этого как Alt. Изменение этого параметра путем перезагрузки конфигурации не поддерживается.

macos_hide_from_tasks

Скрыть окно котенка от запущенных задач ( ⌘ + Tab ) в macOS.Изменение этого параметра путем перезагрузки конфигурации не поддерживается.

macos_quit_when_last_window_closed
 macos_quit_when_last_window_closed нет
 

Попросите котенка выйти, когда все окна верхнего уровня закрыты. По умолчанию котенок будет продолжать работать даже при отсутствии открытых окон, как и ожидается на macOS.

macos_window_resizable
 macos_window_resizable да
 

Отключите это, если хотите, чтобы размер окон верхнего уровня (ОС) котенка нельзя было изменять на macOS.Изменение этого параметра путем перезагрузки конфигурации повлияет только на новые созданные окна.

macos_thicken_font

Нарисуйте дополнительную рамку вокруг шрифта заданной ширины, чтобы увеличить разборчивость при мелком шрифте. Например, значение 0,75 приведет к рендеринг, похожий на субпиксельное сглаживание при обычных размерах шрифта.

macos_traditional_fullscreen
 macos_traditional_fullscreen нет
 

Используйте традиционный полноэкранный переход, который быстрее, но менее красив.

macos_show_window_title_in
 macos_show_window_title_in все
 

Показать или скрыть заголовок окна в окне или строке меню macOS. Ценность Окно покажет заголовок текущего активного окна вверху окно macOS. Значение строка меню покажет заголовок текущее активное окно в строке меню macOS, используя в противном случае потраченное впустую пространство. все будут показывать заголовок везде, а нет скрывает заголовок в окне и в строке меню.

macos_custom_beam_cursor
 macos_custom_beam_cursor нет
 

Включение / отключение пользовательского курсора мыши для macOS, который легче видеть при обоих световых индикаторах. и темный фон. ВНИМАНИЕ: это может сделать ваш курсор мыши невидимым на машины с двумя GPU. Изменение этого параметра путем перезагрузки конфигурации не поддерживается.

linux_display_server
 linux_display_server авто
 

Выберите между Backends Wayland и X11.По умолчанию соответствующий бэкэнд на основе состояния системы выбирается автоматически. Установите значение x11 или wayland , чтобы заставить выбор. Изменив этот параметр, перезагрузив config не поддерживается.

Ключи идентифицируются просто по их строчным символам Юникода. Например: a для клавиши A, [ для клавиши левой квадратной скобки и т. Д. Для функциональной ключи, такие как Enter или Escape имена присутствуют в определениях функциональных клавиш.Список имен модификаторов см .: Моды GLFW

В Linux вы также можете использовать имена ключей XKB для привязки ключей, которые не поддерживаются GLFW. См. Ключи XKB для списка ключевых имен. Используемое имя – это часть после XKB_KEY_ префикс. Обратите внимание, что имя ключа XKB можно использовать только для неизвестных ключей. как ключи GLFW.

Наконец, вы можете использовать необработанные системные коды клавиш для сопоставления ключей, опять же только для ключей, которые не являются известные как ключи GLFW. Чтобы увидеть системный ключевой код для ключа запустите kitty с опцией kitty --debug-input .Тогда Китти будет выводить отладочный текст для каждого ключевого события. В этом тексте найдите native_code значение этого становится именем клавиши в ярлыке. Например:

 on_key_input: ключ glfw: 65 native_code: 0x61 действие: НАЖАТЬ моды: 0x0 текст: 'a'
 

Здесь имя ключа для ключа A 0x61 , и вы можете использовать его с:

для сопоставления ctrl + a чему-либо.

Вы можете использовать специальное действие no_op , чтобы отменить отображение сочетания клавиш, которое назначено в конфигурации по умолчанию:

 карта kitty_mod + space no_op
 

Вы можете объединить несколько действий, которые будут запускаться одним ярлыком, используя синтаксис ниже:

 карта ключа объединяет <разделитель> действие1 <разделитель> действие2 <разделитель> действие3...
 

Например:

 карта kitty_mod + e комбинировать: new_window: next_layout
 

это создаст новое окно и переключится на следующий доступный макет

Вы можете использовать сочетания клавиш с несколькими клавишами, используя синтаксис, показанный ниже:

 карта key1> key2> key3 действие
 

Например:

 карта ctrl + f> 2 set_font_size 20
 

Доступен полный список действий, которые могут быть сопоставлены с нажатиями клавиш. здесь.

kitty_mod

Значение kitty_mod используется как модификатор для всех значений по умолчанию. ярлыки, вы можете изменить его в своей кошечке.conf, чтобы изменить модификаторы для всех ярлыки по умолчанию.

clear_all_shortcuts

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

kitten_alias
 kitten_alias hints hints --hints-offset = 0
 

Вы можете создавать псевдонимы для имен котят, это позволяет отменять значения по умолчанию для варианты котят, а также могут использоваться для сокращения повторяющихся отображений одного и того же котенок с определенной группой вариантов.Например, указанный выше псевдоним меняет значение по умолчанию kitty + kitten hints --hints-offset до нуля для все сопоставления, в том числе встроенные.

Буфер обмена

Копировать в буфер обмена
 карта ctrl + shift + c copy_to_clipboard
 

Существует также действие copy_or_interrupt , которое может быть дополнительно сопоставлено на Ctrl + c . Он будет копировать, только если есть выбор, и отправит в противном случае прервать. Точно так же copy_and_clear_or_interrupt скопирует и очистите выделение или отправьте прерывание, если выбора нет.

Вставить из буфера обмена
 карта ctrl + shift + v paste_from_clipboard
 
Вставить из выделенного фрагмента
 карта ctrl + shift + s paste_from_selection
сдвиг карты + вставка paste_from_selection
 
Передать выбор программе
 карта ctrl + shift + o pass_selection_to_program
 

Вы также можете передать содержимое текущего выделения в любую программу, используя пароль_выбор_к_программе .По умолчанию используется открытая программа системы, но вы можете указать свое, выбор будет передан программе как аргумент командной строки, например:

 карта kitty_mod + o pass_selection_to_program firefox
 

Вы можете передать текущий выбор терминальной программе, запущенной в новом котировке. окно, используя заполнитель @selection:

 карта kitty_mod + y new_window less @selection
 

Управление окнами

Новое окно
 карта ctrl + shift + enter new_window
map cmd + введите new_window 🍎
 

Вы можете открыть новое окно, запустив произвольную программу, например:

 карта kitty_mod + y launch mutt
 

Вы можете открыть новое окно с текущим рабочим каталогом, установленным на рабочий каталог текущего окна, используя:

 карта ctrl + alt + ввод запуск --cwd = текущий
 

Вы можете открыть новое окно, в котором разрешено управлять котенком через средство удаленного управления котенком, добавив к командной строке префикс @.Любые программы, запущенные в этом окне, смогут управлять котенком. Например:

 карта ctrl + ввод запуска --allow-remote-control some_program
 

Вы можете открыть новое окно рядом с текущим активным окном или как первое окно, с:

 карта ctrl + n запуск --location = сосед some_program
карта ctrl + f запуск --location = first some_program
 

Подробнее см. Команда запуска.

Новое окно ОС
 карта ctrl + shift + n new_os_window
карта cmd + n new_os_window 🍎
 

Работает аналогично new_window выше, за исключением того, что открывает окно котенка ОС верхнего уровня.В частности, вы можете использовать new_os_window_with_cwd, чтобы открыть окно с текущий рабочий каталог.

Закрыть окно
 карта ctrl + shift + w close_window
сдвиг карты + cmd + d close_window 🍎
 
Следующее окно
 карта ctrl + shift +] next_window
 
Предыдущее окно
 карта ctrl + shift + [предыдущее_окно
 
Переместить окно вперед
 карта ctrl + shift + f move_window_forward
 
Переместить окно назад
 карта ctrl + shift + b move_window_backward
 
Переместить окно наверх
 карта ctrl + shift + `move_window_to_top
 
Начать изменение размера окна
 карта ctrl + shift + r start_resizing_window
карта cmd + r start_resizing_window 🍎
 
Первое окно
 карта ctrl + shift + 1 first_window
map cmd + 1 first_window 🍎
 
Второе окно
 карта ctrl + shift + 2 second_window
карта cmd + 2 second_window 🍎
 
Третье окно
 карта ctrl + shift + 3 third_window
map cmd + 3 third_window 🍎
 
Четвертое окно
 карта ctrl + shift + 4 4th_window
map cmd + 4 4th_window 🍎
 
Пятое окно
 карта ctrl + shift + 5 Friday_window
карта cmd + 5 Friday_window 🍎
 
Шестое окно
 карта ctrl + shift + 6 sixth_window
map cmd + 6 sixth_window 🍎
 
Седьмое окно
 карта ctrl + shift + 7 седьмое_окно
map cmd + 7 седьмое_окно 🍎
 
Восемь окон
 карта ctrl + shift + 8 восьмое_окно
карта cmd + 8 восьмое_окно 🍎
 
Девятое окно
 карта ctrl + shift + 9 ninth_window
карта cmd + 9 ninth_window 🍎
 
Десятое окно
 карта ctrl + shift + 0 tenth_window
 

Управление вкладками

Следующая вкладка
 карта ctrl + shift + right next_tab
map shift + cmd +] next_tab 🍎
карта ctrl + tab next_tab
 
Предыдущая вкладка
 карта ctrl + shift + left previous_tab
сдвиг карты + cmd + [предыдущая_таблица 🍎
сдвиг карты + ctrl + tab previous_tab
 
Новая вкладка
 карта ctrl + shift + t new_tab
карта cmd + t new_tab 🍎
 
Закрыть вкладку
 карта ctrl + shift + q close_tab
карта cmd + w close_tab 🍎
 
Закройте окно ОС
 сдвиг карты + cmd + w close_os_window 🍎
 
Переместить вкладку вперед
 карта ctrl + shift +.move_tab_forward
 
Переместить вкладку назад
 карта ctrl + shift +, move_tab_backward
 
Установить заголовок вкладки
 карта ctrl + shift + alt + t set_tab_title
сдвиг карты + cmd + i set_tab_title 🍎
 

Вы также можете создать ярлыки для перехода к определенным вкладкам, причем 1 будет первой. tab, 2 – вторая вкладка, -1 – ранее активная вкладка, и любое число больше, чем последняя вкладка, являющаяся последней вкладкой:

 карта ctrl + alt + 1 goto_tab 1
карта ctrl + alt + 2 goto_tab 2
 

Как и в случае с new_window выше, вы также можете передать имя произвольного команды для запуска при использовании new_tab и использования new_tab_with_cwd .Наконец, если вы хотите, чтобы новая вкладка открывалась рядом с текущей вкладкой, а не в конец списка вкладок, используйте:

 map ctrl + t new_tab! Neighbour [необязательный cmd для запуска]
 

Управление компоновкой

Следующий макет
 карта ctrl + shift + l next_layout
 

Вы также можете создать ярлыки для перехода к определенным раскладкам:

 карта ctrl + alt + t goto_layout tall
карта ctrl + alt + s стек goto_layout
 

Аналогично, чтобы вернуться к предыдущей раскладке:

 карта ctrl + alt + p last_used_layout
 

Также есть функция переключения раскладки, которая переключает к названному макету или вернуться к предыдущему макету, если в названном макете.Полезно для временного «увеличения» активное окно при переключении на макет стека:

 карта ctrl + alt + z toggle_layout stack
 

Размер шрифта

Вы можете изменить размер шрифта для всех окон ОС котенка верхнего уровня одновременно или только текущий.

Увеличить размер шрифта
 карта ctrl + shift + равно change_font_size все +2.0
карта ctrl + shift + plus change_font_size все +2.0
карта ctrl + shift + kp_add change_font_size все +2.0
map cmd + plus change_font_size все +2.0 🍎
карта cmd + равно change_font_size все +2.0 🍎
карта cmd + shift + равно change_font_size все +2.0 🍎
 
Уменьшить размер шрифта
 карта ctrl + shift + минус change_font_size все -2.0
карта ctrl + shift + kp_subtract change_font_size все -2.0
map cmd + минус change_font_size все -2.0 🍎
map cmd + shift + минус change_font_size все -2.0 🍎
 
Сбросить размер шрифта
 карта ctrl + shift + backspace change_font_size все 0
карта cmd + 0 change_font_size все 0 🍎
 

Для настройки ярлыков для шрифтов определенного размера:

 карта kitty_mod + f6 change_font_size все 10.0
 

Для настройки ярлыков для изменения только размера шрифта текущего окна ОС:

 карта kitty_mod + f6 change_font_size текущая 10.0
 

Выбрать видимый текст и действовать с ним

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

Открыть URL
 карта ctrl + shift + e open_url_with_hints
 

Откройте текущий видимый URL-адрес с помощью клавиатуры.Программа, используемая для открытия URL указан в open_url_with .

Вставить выбранный путь
 map ctrl + shift + p> f kitten hints --type path --program -
 

Выберите путь / имя файла и вставьте его в терминал. Полезно, например, для запускать команды git для имени файла, выведенного из предыдущей команды git.

Открыть выбранный путь
 карта ctrl + shift + p> shift + f kitten hints --type path
 

Выберите путь / имя файла и откройте его с помощью открытой программы по умолчанию.

Вставить выделенную строку
 map ctrl + shift + p> l kitten hints --type line --program -
 

Выделите строку текста и вставьте ее в терминал. Используйте для вывода например: ls -1

Вставить выбранное слово
 карта ctrl + shift + p> w подсказки котенка - введите слово --программа -
 

Выделите слова и вставьте в терминал.

Вставить выбранный хэш
 map ctrl + shift + p> h kitten hints --type hash --program -
 

Выберите что-то похожее на хэш и вставьте его в терминал.Полезный с помощью git, который использует хеши sha1 для определения коммитов

Открыть выбранный файл в выбранной строке
 map ctrl + shift + p> n kitten hints --type белье
 

Выберите что-то похожее на filename: lnenum и откройте его в vim по адресу указанный номер строки.

Открыть выделенную гиперссылку
 карта ctrl + shift + p> y kitten hints --type гиперссылка
 

Выберите гиперссылку (т.е.е. URL-адрес, который был отмечен терминалом как таковой программа, например, ls –hyperlink = auto).

У котенка подсказок есть еще много режимов работы, которые вы можете сопоставить с различными ярлыки. Для полного описания см. Подсказки.

Разное

Включить полноэкранный режим
 карта ctrl + shift + f11 toggle_fullscreen
 
Переключить в развернутом виде
 карта ctrl + shift + f10 toggle_maximized
 
Ввод Unicode
 карта ctrl + shift + u котенок unicode_input
карта cmd + ctrl + пробел котенок unicode_input 🍎
 
Отредактируйте файл конфигурации
 карта ctrl + shift + f2 edit_config_file
карта cmd +, edit_config_file 🍎
 
Откройте командную оболочку котенка
 карта ctrl + shift + escape окно kitty_shell
 

Откройте оболочку котенка в новом окне / вкладке / оверлее / os_window для управления котенком. с помощью команд.

Увеличить непрозрачность фона
 карта ctrl + shift + a> m set_background_opacity +0.1
 
Уменьшить непрозрачность фона
 карта ctrl + shift + a> l set_background_opacity -0.1
 
Сделать фон полностью непрозрачным
 карта ctrl + shift + a> 1 set_background_opacity 1
 
Сбросить непрозрачность фона
 карта ctrl + shift + a> d set_background_opacity по умолчанию
 
Сбросьте терминал
 карта ctrl + shift + delete clear_terminal сброс активен
карта cmd + option + r clear_terminal сброс активен 🍎
 

Вы можете создать ярлыки для очистки / сброса терминала.Например:

 # Сбросить терминал
карта kitty_mod + f9 clear_terminal сброс активен
# Очистить экран терминала, удалив все содержимое
карта kitty_mod + f10 clear_terminal очистить активный
# Очистить прокрутку терминала, удалив ее
карта kitty_mod + f11 clear_terminal активна прокрутка
# Прокрутите содержимое экрана до прокрутки
карта kitty_mod + f12 clear_terminal прокрутка активна
 

Если вы хотите работать со всеми окнами, а не только с текущим, используйте все вместо активных.l ‘прокрутка и четкий экран

Перезагрузить kitty.conf
 карта ctrl + shift + f5 load_config_file
карта cmd + control +, load_config_file 🍎
 

Перезагрузите kitty.conf, применив все изменения с момента последней загрузки. Обратите внимание, что некоторые настройки не могут быть изменены динамически и требуют полный перезапуск кошечки. Вы также можете сопоставить привязку клавиш для загрузки другого config, например:

 карта f5 load_config /path/to/alternative/kitty.conf
 

Обратите внимание, что все настройки от оригинальной кошечки.conf отбрасываются, другими словами новые настройки conf заменяют старые.

Конфигурация отладочного котенка
 карта ctrl + shift + f6 debug_config
карта cmd + option +, debug_config 🍎
 

Показать подробную информацию о том, с какой именно конфигурацией работает котенок, и его принимающая среда. Полезно для устранения неполадок.

Отправлять произвольный текст при нажатии клавиш

Вы можете указать котенку отправлять произвольный текст в кодировке (UTF-8) на адрес клиентская программа при нажатии указанных сочетаний клавиш.Например:

 карта ctrl + alt + a send_text все Специальный текст
 

При нажатии клавиш ctrl + alt + a будет отправлен «специальный текст». комбинация. Отправляемый текст представляет собой строковый литерал Python, поэтому вы можете использовать экранирование, например \ x1b для отправки управляющих кодов или \ u21fb для отправки символы Юникода (или вы можете просто ввести символы Юникода напрямую как Текст UTF-8). Первый аргумент send_text – это режимы клавиатуры, в которых активировать ярлык.Возможные значения: нормальный или application или kitty или их комбинацию, разделенную запятыми. Специальное ключевое слово all означает все режимы. Режимы нормальный и приложение относятся к режиму клавиши курсора DECCKM для терминалы, а kitty относится к специальному протоколу расширенной клавиатуры kitty.

Другой пример, который выводит слово, а затем перемещает курсор в начало строка (такая же, как при нажатии клавиши Home):

 карта ctrl + alt + a send_text обычный Word \ x1b [H
карта ctrl + alt + приложение send_text Word \ x1bOH
 

Вы можете скачать образец котенка .conf со всеми настройками по умолчанию и комментарии, описывающие каждую настройку, нажав: sample kitty.conf .

rfc8252

 Инженерная группа Интернета (IETF) В. Деннисс
Запрос комментариев: 8252 Google
BCP: 212 J. Bradley
Обновления: 6749 Ping Identity
Категория: Лучшая текущая практика Октябрь 2017 г.
ISSN: 2070-1721 гг.


                       OAuth 2.0 для собственных приложений

Абстрактный

   Запросы авторизации OAuth 2.0 из собственных приложений должны выполняться только
   через внешние пользовательские агенты, в первую очередь через браузер пользователя. Этот
   спецификация подробно описывает причины безопасности и удобства использования, почему это
   случай и как собственные приложения и серверы авторизации могут реализовать
   это лучшая практика.

Статус этой памятки

   Эта памятка документирует передовую практику Интернета.

   Этот документ является продуктом Инженерной группы Интернета.
   (IETF). Он представляет собой консенсус сообщества IETF.Она имеет
   получил публичное рецензирование и был одобрен к публикации
   Инженерная группа управления Интернетом (IESG). Дополнительная информация о
   BCP доступны в разделе 2 RFC 7841.

   Информация о текущем статусе этого документа, исправлениях,
   а о том, как оставить отзыв, можно узнать по адресу
   https://www.rfc-editor.org/info/rfc8252.

Уведомление об авторских правах

   Авторские права (c) 2017 IETF Trust и лица, указанные как
   авторы документа. Все права защищены.

   Этот документ регулируется BCP 78 и Правовой нормой IETF Trust.
   Положения, касающиеся документов IETF
   (https: // попечитель.ietf.org/license-info) действует на дату
   публикация этого документа. Пожалуйста, просмотрите эти документы
   внимательно, поскольку они уважительно описывают ваши права и ограничения
   к этому документу. Компоненты кода, извлеченные из этого документа, должны
   включить упрощенный текст лицензии BSD, как описано в Разделе 4.e
   Правовые положения Trust и предоставляются без гарантии, как
   описано в упрощенной лицензии BSD.





Denniss & Bradley Best Current Practice [Страница 1] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


Оглавление

   1. Введение  . . . . . . . . . . . . . . . . . . . . . . . . 3
   2. Условные обозначения. . . . . . . . . . . . . . . . . . . 3
   3. Терминология. . . . . . . . . . . . . . . . . . . . . . . . . 3
   4. Обзор. . . . . . . . . . . . . . . . . . . . . . . . . . 4
     4.1. Процесс авторизации для собственных приложений с помощью браузера. . 5
   5. Использование связи URI между приложениями для OAuth. . . . . . . . . 6
   6.Инициирование запроса авторизации из собственного приложения. . . 6
   7. Получение ответа авторизации в родном приложении. . . . 7
     7.1. Перенаправление схемы URI частного использования. . . . . . . . . . . 8
     7.2. Заявленное перенаправление URI схемы https. . . . . . . . . 9
     7.3. Перенаправление интерфейса петли. . . . . . . . . . . . . 9
   8. Соображения безопасности. . . . . . . . . . . . . . . . . . . 10
     8.1. Защита кода авторизации. . . . . . . . . . . .10
     8.2. Поток неявной авторизации предоставления OAuth. . . . . . . . . 11
     8.3. Замечания по петлевому перенаправлению. . . . . . . . . . . . 11
     8.4. Регистрация клиентов нативных приложений. . . . . . . . . . . 12
     8.5. Проверка подлинности клиента. . . . . . . . . . . . . . . . . . 12
     8.6. Выдача себя за клиента. . . . . . . . . . . . . . . . . . 13
     8.7. Поддельные внешние пользовательские агенты. . . . . . . . . . . . . . . . 13
     8.8. Вредоносные внешние пользовательские агенты. . . . . . . .. . . . . 14
     8.9. Защита от подделки межплатформенных запросов. . . . . . . . . . 14
     8.10. Устранение путаницы сервера авторизации. . . . . . . . . 14
     8.11. Внешние пользовательские агенты, не связанные с браузером. . . . . . . . . . . . 15
     8.12. Встроенные пользовательские агенты. . . . . . . . . . . . . . . . . . 15
   9. Соображения IANA. . . . . . . . . . . . . . . . . . . . . 16
   10. Список литературы. . . . . . . . . . . . . . . . . . . . . . . . . 16
     10.1. Нормативные ссылки . . . . . . . .. . . . . . . . . . 16
     10.2. Информативные ссылки. . . . . . . . . . . . . . . . . 17
   Приложение A. Контрольный список поддержки сервера. . . . . . . . . . . . . . 18
   Приложение B. Детали реализации для конкретной платформы. . . . . . 18
     В.1. Подробности реализации iOS. . . . . . . . . . . . . . . 18
     БИ 2. Подробности реализации Android. . . . . . . . . . . . . 19
     В.3. Подробности реализации Windows. . . . . . . . . . . . . 19
     В.4. Подробности реализации macOS.. . . . . . . . . . . . . 20
     В.5. Подробности реализации Linux. . . . . . . . . . . . . . 21 год
   Благодарности. . . . . . . . . . . . . . . . . . . . . . . . 21 год
   Адреса авторов. . . . . . . . . . . . . . . . . . . . . . . 21 год












Denniss & Bradley Best Current Practice [Страница 2] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


1. Введение

   Раздел 9 структуры авторизации OAuth 2.0 [RFC6749]
   документирует два подхода к взаимодействию нативных приложений с
   конечная точка авторизации: встроенный пользовательский агент и внешний пользователь-
   агент.Эта лучшая текущая практика требует, чтобы только внешние пользовательские агенты
   как браузер, используются для OAuth нативными приложениями. Он документирует, как
   собственные приложения могут реализовывать потоки авторизации, используя браузер как
   предпочтительный внешний пользовательский агент, а также требования к
   серверы авторизации для поддержки такого использования.

   Эта практика также известна как «шаблон AppAuth» в отношении
   библиотеки с открытым исходным кодом [AppAuth], которые его реализуют.

2. Условные обозначения

   Ключевые слова «ДОЛЖНЫ», «НЕ ДОЛЖНЫ», «ОБЯЗАТЕЛЬНО», «ДОЛЖНЫ», «НЕ ДОЛЖНЫ»,
   «ДОЛЖЕН», «НЕ ДОЛЖЕН», «РЕКОМЕНДУЕТСЯ», «НЕ РЕКОМЕНДУЕТСЯ», «МОЖЕТ» и
   «ДОПОЛНИТЕЛЬНО» в этом документе следует толковать, как описано в
   BCP 14 [RFC2119] [RFC8174] тогда и только тогда, когда они появляются во всех
   столицы, как показано здесь.3. Терминология

   В дополнение к терминам, определенным в указанных спецификациях, это
   в документе используются следующие термины:

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

   "app" "родное приложение", если не указано иное."магазин приложений" Интернет-магазин, в котором пользователи могут загружать и
      покупать приложения.

   Протокол авторизации «OAuth», указанный в OAuth 2.0.
      Структура авторизации [RFC6749].

   "внешний пользовательский агент" Пользовательский агент, способный обрабатывать
      запрос авторизации, который является отдельной сущностью или доменом безопасности
      к собственному приложению, выполняющему запрос, так что приложение не может
      получать доступ к хранилищу файлов cookie, а также не проверять или изменять содержимое страницы.



Denniss & Bradley Best Current Practice [Страница 3] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


   "встроенный пользовательский агент" Пользовательский агент, размещенный в собственном приложении, создающем
      запрос авторизации, который является частью приложения или общих ресурсов
      тот же домен безопасности, чтобы приложение могло получить доступ к cookie
      хранить и / или проверять или изменять содержимое страницы.

   "браузер" Приложение по умолчанию, запускаемое операционной системой.
      для обработки содержимого URI схемы "http" и "https".

   "вкладка браузера в приложении" Программный экземпляр браузера.
      который отображается внутри хост-приложения, но сохраняет полный
      свойства безопасности и состояние аутентификации браузера.Это
      имеет разные названия продуктов, зависящих от платформы, некоторые из которых
      подробно описаны в Приложении B.

   "web-view" Компонент пользовательского интерфейса (пользовательского интерфейса) веб-браузера, который
      встроены в приложения для отображения веб-страниц под управлением приложения.

   «взаимодействие между приложениями». Связь между двумя приложениями на
      устройство.

   "заявленный" https "URI схемы" Некоторые платформы позволяют приложениям запрашивать
      URI схемы https после подтверждения права собственности на доменное имя.
      Запрошенные таким образом URI затем открываются в приложении вместо
      браузер."схема URI для частного использования" В этом документе схема URI
      определяется приложением (в соответствии с требованиями Раздела 3.8
      [RFC7595]) и зарегистрирован в операционной системе. Запросы URI
      к таким схемам запустите приложение, которое зарегистрировало его для обработки
      запрос.

   "обратная нотация доменного имени" Соглашение об именах, основанное на
      система доменных имен, но та, в которой компоненты домена
      в обратном порядке, например "app.example.com" становится
      "com.example.приложение".

4. Обзор

   Для авторизации пользователей в нативных приложениях лучшая текущая практика -
   выполнить запрос авторизации OAuth во внешнем пользовательском агенте
   (обычно браузер), а не встроенный пользовательский агент (например,
   один реализован с веб-представлениями).

   Раньше для нативных приложений было обычным делом использовать встроенные пользовательские агенты.
   (обычно реализуется с помощью веб-представлений) для авторизации OAuth
   Запросы. У этого подхода много недостатков, в том числе хост-приложение.
   возможность копировать учетные данные пользователя и файлы cookie, а также пользователя
   необходимость аутентификации с нуля в каждом приложении.См. Раздел 8.12.



Denniss & Bradley Best Current Practice [Страница 4] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   для более глубокого анализа недостатков использования встроенных пользовательских агентов
   для OAuth.

   Запросы авторизации собственных приложений, которые используют браузер, более
   безопасный и может использовать состояние аутентификации пользователя.
   Возможность использовать существующий сеанс аутентификации в браузере
   обеспечивает единый вход, поскольку пользователям не нужно проходить аутентификацию в
   сервер авторизации каждый раз, когда они используют новое приложение (если этого не требует
   политика сервера авторизации).Поддержка потоков авторизации между собственным приложением и браузером
   возможно без изменения самого протокола OAuth, так как OAuth
   запрос авторизации и ответ уже определены в терминах
   URI. | Обновить токен + --------------- +
  | | | |
  | | | |
  | | (1) | (4) |
  | | Авторизат- | Авториза- |
  | | ion Запрос | Код ции |
  | | | |
  | | | |
  | v | |
  | + --------------------------- + | (2) Авторизация + --------------- +
  | | | | Запрос | |
  | | Браузер | ---------------------> | Авторизация |
  | | | <--------------------- | Конечная точка |
  | + --------------------------- + | (3) Авторизация | |
  | | Код + --------------- +
  + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +

       Рисунок 1: Авторизация собственного приложения через внешний пользовательский агент




Denniss & Bradley Best Current Practice [Страница 5] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


   На рисунке 1 показано взаимодействие между собственным приложением и
   браузер для авторизации пользователя.

   (1) Клиентское приложение открывает вкладку браузера с запросом авторизации.

   (2) Конечная точка авторизации получает запрос авторизации,
        аутентифицирует пользователя и получает авторизацию.
        Аутентификация пользователя может включать связывание с другими
        системы аутентификации.

   (3) Сервер авторизации выдает код авторизации на
        перенаправить URI.(4) Клиент получает код авторизации из URI перенаправления.

   (5) Клиентское приложение представляет код авторизации на токене.
        конечная точка.

   (6) Конечная точка токена проверяет код авторизации и выдает
        токены запрошены.

5. Использование связи URI между приложениями для OAuth.

   Так же, как URI используются для OAuth 2.0 [RFC6749] в Интернете, чтобы инициировать
   запрос авторизации и вернуть ответ авторизации на
   запрашивающего веб-сайта, URI могут использоваться собственными приложениями для запуска
   запрос авторизации в браузере устройства и возврат
   ответ на запрашивающее собственное приложение.Применяя те же методы, которые используются в Интернете для OAuth, можно увидеть преимущества
   в веб-контексте, например, удобство использования сеанса единого входа и
   также достигается безопасность отдельного контекста аутентификации
   в контексте нативного приложения. Повторное использование того же подхода также снижает
   сложность реализации и увеличивает функциональную совместимость за счет
   полагаясь на основанные на стандартах веб-потоки, не относящиеся к конкретному
   конкретная платформа.

   Чтобы соответствовать этой передовой практике, собственные приложения ДОЛЖНЫ использовать внешний
   пользовательский агент для выполнения запросов авторизации OAuth.Это достигается
   открыв запрос авторизации в браузере (подробнее в
   Раздел 6) и используя URI перенаправления, который вернет
   ответ авторизации обратно в собственное приложение (определено в Разделе 7).









Denniss & Bradley Best Current Practice [Страница 6] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


6. Инициирование запроса на авторизацию из собственного приложения.

   Собственные приложения, требующие авторизации пользователя, создают авторизацию
   запросить URI с типом предоставления кода авторизации согласно Разделу 4.1 из
   OAuth 2.0 [RFC6749] с использованием URI перенаправления, который может быть получен
   родным приложением.

   Функция URI перенаправления для авторизации нативного приложения
   запрос аналогичен запросу на авторизацию через Интернет.
   Вместо того, чтобы возвращать ответ авторизации на OAuth
   клиентский сервер, URI перенаправления, используемый собственным приложением, возвращает
   ответ на приложение. Несколько вариантов URI перенаправления, которые будут
   вернуть ответ авторизации в собственное приложение в другом
   платформы описаны в разделе 7.Любой URI перенаправления, который позволяет
   приложение для получения URI и проверки его параметров жизнеспособно.

   Клиенты общедоступных нативных приложений ДОЛЖНЫ реализовывать ключ подтверждения для кода.
   Расширение Exchange (PKCE [RFC7636]) для OAuth и авторизация
   серверы ДОЛЖНЫ поддерживать PKCE для таких клиентов по причинам, подробно описанным
   в разделе 8.1.

   После создания URI запроса авторизации приложение использует
   API-интерфейсы, зависящие от платформы, чтобы открыть URI во внешнем пользовательском агенте.
   Обычно в качестве внешнего агента используется браузер по умолчанию, который
   есть приложение, настроенное для обработки схем "http" и "https"
   URI в системе; однако разные критерии выбора браузера и
   МОГУТ использоваться другие категории внешних пользовательских агентов.В этой передовой практике браузер рассматривается как РЕКОМЕНДУЕМЫЙ внешний
   пользовательский агент для нативных приложений. Внешний пользовательский агент, разработанный
   специально для авторизации пользователей и может обрабатывать
   Также МОГУТ использоваться запросы авторизации и ответы, такие как браузер.
   Другие внешние пользовательские агенты, такие как собственное приложение, предоставляемое
   сервер авторизации может соответствовать критериям, изложенным в этом лучшем
   практика, включая использование тех же свойств URI перенаправления, но
   их использование выходит за рамки данной спецификации.Некоторые платформы поддерживают функцию браузера, известную как "встроенный в приложение браузер".
   вкладки ", где приложение может представлять вкладку браузера в приложении.
   контекст без переключения приложений, но при этом сохраняют ключевые преимущества
   браузер, такой как общее состояние проверки подлинности и контекст безопасности.
   На платформах, где они поддерживаются, РЕКОМЕНДУЕТСЯ для
   причины удобства использования, что приложения используют вкладки браузера в приложении для
   запрос авторизации.







Деннисс и Брэдли Best Current Practice [Страница 7] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


7. Получение ответа об авторизации в нативном приложении

   Для нативных приложений доступно несколько вариантов URI перенаправления.
   получив ответ авторизации от браузера,
   доступность и удобство использования зависит от платформы.

   Для полной поддержки этой передовой практики серверы авторизации ДОЛЖНЫ предлагать
   как минимум три варианта URI перенаправления, описанные ниже
   подразделы нативных приложений. Нативные приложения МОГУТ использовать любое перенаправление
   вариант наилучшим образом соответствует их потребностям, учитывая особенности платформы
   детали реализации.7.1. Перенаправление схемы URI частного использования

   Многие мобильные и настольные вычислительные платформы поддерживают взаимодействие между приложениями.
   связь через URI, позволяя приложениям регистрировать частный URI
   схемы (иногда называемые "настраиваемыми схемами URL")
   например com.example.app. Когда браузер или другое приложение пытается
   загрузить URI со схемой URI частного использования, приложение, которое его зарегистрировало
   запускается для обработки запроса.

   Выполнение запроса авторизации OAuth 2.0 с частным URI
   схема перенаправления, собственное приложение запускает браузер со стандартным
   запрос авторизации, но тот, в котором URI перенаправления использует
   схема URI частного использования, зарегистрированная в операционной системе.При выборе схемы URI для связи с приложением приложения ДОЛЖНЫ использовать
   Схема URI, основанная на доменном имени под их контролем, выраженная в
   обратный порядок, рекомендованный разделом 3.8 [RFC7595] для
   схемы URI частного использования.

   Например, приложение, которое управляет доменным именем app.example.com.
   могут использовать "com.example.app" в качестве схемы. Некоторая авторизация
   серверы назначают идентификаторы клиентов на основе доменных имен, например,
   client1234.usercontent.example.net, который также можно использовать как
   доменное имя для схемы при реверсировании аналогичным образом.А
   схема, такая как "myapp", однако, не будет соответствовать этому требованию, так как
   он не основан на доменном имени.

   Когда существует несколько приложений от одного и того же издателя, необходимо соблюдать осторожность.
   взяты так, чтобы каждая схема была уникальной в пределах этой группы. На платформах
   которые используют идентификаторы приложений на основе доменных имен в обратном порядке, те
   идентификаторы могут быть повторно использованы в качестве схемы URI частного использования для OAuth
   перенаправить, чтобы избежать этой проблемы.







Denniss & Bradley Best Current Practice [Страница 8] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


   Следуя требованиям Раздела 3.2 [RFC3986], так как есть
   нет полномочий по присвоению имен для переадресации схемы URI частного использования, только
   одинарная косая черта ("/") появляется после компонента схемы. Полный
   Примером URI перенаправления, использующего схему URI частного использования, является:

     com.example.app:/oauth3redirect/example-provider

   Когда сервер авторизации завершает запрос, он перенаправляется на
   URI перенаправления клиента, как обычно.Как
   URI перенаправления использует схему URI частного использования, это приводит к
   операционная система запускает собственное приложение, передавая URI как
   параметр запуска. Затем собственное приложение использует обычную обработку для
   ответ авторизации.

7.2. Заявленное перенаправление URI схемы https

   Некоторые операционные системы позволяют приложениям использовать схему https [RFC7230]
   URI в контролируемых ими доменах. Когда браузер встречает
   заявленный URI, вместо того, чтобы страница загружалась в браузере,
   собственное приложение запускается с URI, указанным в качестве параметра запуска.Такие URI могут использоваться в качестве URI перенаправления собственными приложениями. Они есть
   неотличимы для сервера авторизации от обычного веб-
   на основе URI перенаправления клиента. Пример:

     https://app.example.com/oauth3redirect/example-provider

   Поскольку одного URI перенаправления недостаточно, чтобы отличить общедоступный нативный
   клиентов приложений из конфиденциальных веб-клиентов, это НЕОБХОДИМО в
   Раздел 8.4 о том, что тип клиента должен быть записан во время клиента
   регистрация, чтобы сервер мог определять тип клиента и
   Действуй соответственно.Заявленные приложением URI перенаправления схемы "https" имеют некоторые преимущества
   по сравнению с другими вариантами перенаправления собственных приложений в том, что идентичность
   конечное приложение гарантировано серверу авторизации
   Операционная система. По этой причине нативные приложения ДОЛЖНЫ использовать их поверх
   другие варианты, где это возможно.

7.3. Перенаправление интерфейса петли

   Собственные приложения, которые могут открывать порт в петлевой сети
   интерфейс без специальных разрешений (обычно
   настольные операционные системы) могут использовать петлевой интерфейс для получения
   перенаправление OAuth.URI перенаправления с обратной связью используют схему "http" и создаются с использованием
   литерал петлевого IP-адреса и любой порт, который слушает клиент.



Denniss & Bradley Best Current Practice [Страница 9] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   То есть "http://127.0.0.1:{port}/{path}" для IPv4 и
   "http: // [:: 1]: {порт} / {путь}" для IPv6. Пример перенаправления с использованием
   Петлевой интерфейс IPv4 со случайно назначенным портом:

     http: // 127.0.0.1: 51004 / oauth3redirect / example-provider

   Пример перенаправления с использованием петлевого интерфейса IPv6 со случайным
   назначенный порт:

     http: // [:: 1]: 61023 / oauth3redirect / example-provider

   Сервер авторизации ДОЛЖЕН разрешить указание любого порта в
   время запроса URI перенаправления IP-адреса с обратной связью, чтобы учесть
   клиенты, которые получают доступный временный порт от действующего
   системе на момент запроса.

   Клиентам НЕ СЛЕДУЕТ предполагать, что устройство поддерживает определенные
   версия интернет-протокола.РЕКОМЕНДУЕТСЯ, чтобы клиенты
   попытаться подключиться к интерфейсу обратной связи, используя как IPv4, так и IPv6
   и используйте то, что доступно.

8. Соображения безопасности

8.1. Защита кода авторизации

   Варианты URI перенаправления, описанные в Разделе 7, имеют преимущество
   что только собственное приложение на том же устройстве или собственный веб-сайт приложения
   может получить код авторизации, ограничивающий поверхность атаки.
   Однако перехват кода другим собственным приложением, работающим на
   такое же устройство возможно.Ограничение использования схем URI частного использования для URI перенаправления:
   что несколько приложений обычно могут регистрировать одну и ту же схему, что
   делает неопределенным, какое приложение получит авторизацию
   код. В разделе 1 PKCE [RFC7636] подробно описано, как это ограничение может быть
   используется для выполнения атаки с перехватом кода.

   URI-адреса перенаправления на основе IP-петли могут быть восприимчивы к перехвату с помощью
   другие приложения, получающие доступ к тому же интерфейсу обратной связи на некоторых рабочих станциях.
   системы.

   Перенаправления схемы https, заявленные приложением, менее восприимчивы к URI.
   перехват из-за наличия полномочий URI, но приложение
   по-прежнему публичный клиент; далее URI отправляется с использованием рабочего
   обработчик диспетчеризации URI системы с неизвестными свойствами безопасности.Denniss & Bradley Best Current Practice [Страница 10] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   Протокол PKCE [RFC7636] был создан специально для смягчения этого
   атака. Это расширение OAuth 2.0 с подтверждением владения, которое
   защищает код авторизации от использования в случае его перехвата.
   Чтобы обеспечить защиту, это расширение позволяет клиенту генерировать
   секретный верификатор; он передает хэш этого верификатора в начальном
   запрос авторизации и должен представить нехешированный верификатор, когда
   погашение кода авторизации.Приложение, которое перехватило
   код авторизации не будет владеть этим секретом,
   делая код бесполезным.

   Раздел 6 требует, чтобы и клиенты, и серверы использовали PKCE для общедоступных
   клиенты собственных приложений. Серверы авторизации ДОЛЖНЫ отклонять
   запросы авторизации от собственных приложений, которые не используют PKCE,
   возврат сообщения об ошибке, как определено в разделе 4.4.1 PKCE
   [RFC7636].

8.2. Поток неявной авторизации гранта OAuth

   Поток неявной авторизации гранта OAuth 2.0 (определен в
   Раздел 4.2 OAuth 2.0 [RFC6749]) в целом работает с практикой
   выполнения запроса авторизации в браузере и получения
   ответ авторизации через обмен данными между приложениями на основе URI.
   Однако, поскольку неявный поток не может быть защищен PKCE [RFC7636]
   (что требуется в разделе 8.1), использование неявного потока с
   нативные приложения НЕ РЕКОМЕНДУЕТСЯ.

   Маркеры доступа, предоставленные через неявный поток, также не могут быть обновлены
   без взаимодействия с пользователем, выполнение потока предоставления кода авторизации -
   который может выдавать токены обновления - более практичный вариант для
   собственная авторизация приложений, требующая обновления токенов доступа.8.3. Замечания по петлевому перенаправлению

   URI перенаправления интерфейса обратной петли используют схему "http" (т. Е. Без
   Безопасность транспортного уровня (TLS)). Это приемлемо для кольцевой проверки
   URI перенаправления интерфейса, поскольку HTTP-запрос никогда не покидает устройство.

   Клиенты должны открывать сетевой порт только при запуске
   запрос авторизации и закройте его после получения ответа.

   Клиенты должны прослушивать только сетевой интерфейс обратной петли, в
   чтобы избежать вмешательства со стороны других участников сети.При перенаправлении URI с использованием localhost (т. Е.
   "http: // localhost: {port} / {path}") работают аналогично loopback IP.
   перенаправления, описанные в Разделе 7.3, использование localhost НЕ
   РЕКОМЕНДУЕМЫЕ. Указание URI перенаправления с помощью литерала IP-адреса петли
   вместо localhost позволяет избежать непреднамеренного прослушивания в сети



Denniss & Bradley Best Current Practice [Страница 11] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   интерфейсы кроме интерфейса обратной петли.Это также меньше
   восприимчив к брандмауэрам на стороне клиента и неверно настроенному имени хоста
   разрешение на устройстве пользователя.

8.4. Регистрация клиентов нативных приложений

   За исключением случаев использования такого механизма, как динамическая регистрация клиентов.
   [RFC7591] для предоставления секретов для каждого экземпляра, собственные приложения
   классифицируются как общедоступные клиенты, как определено в разделе 2.1 OAuth 2.0.
   [RFC6749]; они ДОЛЖНЫ быть зарегистрированы на сервере авторизации как
   такой. Серверы авторизации ДОЛЖНЫ записывать тип клиента в
   регистрационные данные клиента для идентификации и обработки запросов
   соответственно.Серверы авторизации ДОЛЖНЫ требовать от клиентов регистрации их полных
   перенаправить URI (включая компонент пути) и отклонить авторизацию
   запросы, которые указывают URI перенаправления, который не совсем соответствует
   тот, который был зарегистрирован; исключение составляют перенаправления с обратной связью, где
   требуется точное совпадение, за исключением компонента URI порта.

   Для переадресации на основе схемы URI частного использования серверы авторизации
   СЛЕДУЕТ обеспечить выполнение требования Раздела 7.1 о том, что клиенты используют
   схемы, основанные на обратном доменном имени.Как минимум, любой
   схема URI для частного использования, не содержащая символа точки (".")
   ДОЛЖЕН быть отклонен.

   В дополнение к свойствам устойчивости к столкновениям, требующим URI
   схема на основе доменного имени, которое находится под управлением приложения
   может помочь доказать право собственности в случае спора, когда два приложения
   заявить ту же схему URI частного использования (где одно приложение действует
   злонамеренно). Например, если два приложения заявили «com.example.app»,
   владелец example.com может обратиться к оператору магазина приложений с просьбой
   удалите поддельное приложение.Такую петицию сложнее доказать, если
   Использовалась общая схема URI.

   Серверы авторизации МОГУТ запросить включение другой платформы -
   конкретная информация, такая как пакет приложения или название пакета, или
   другая информация, которая может быть полезна для проверки вызывающего приложения
   identity в операционных системах, поддерживающих такие функции.

8.5. Проверка подлинности клиента

   Секреты, которые статически включены как часть приложения, распространяемого в
   несколько пользователей не должны рассматриваться как конфиденциальные секреты, поскольку один
   пользователь может проверить свою копию и узнать общий секрет.За это
   причина, и те, которые указаны в разделе 5.3.1 [RFC6819], это НЕ
   РЕКОМЕНДУЕТСЯ для серверов авторизации требовать клиента




Деннисс и Брэдли Best Current Practice [Страница 12] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   аутентификация клиентов общедоступных нативных приложений с использованием общего секрета,
   так как это имеет мало значения, кроме идентификации клиента, которая
   уже предоставлен параметром запроса client_id.Серверы авторизации, которые по-прежнему требуют статически включенного общего доступа
   секрет для клиентов собственных приложений ДОЛЖЕН относиться к клиенту как к общедоступному
   клиент (как определено в разделе 2.1 OAuth 2.0 [RFC6749]), а не
   принять секрет как доказательство личности клиента. Без
   дополнительные меры, такие клиенты могут выдавать себя за клиента
   (см. Раздел 8.6).

8.6. Выдача себя за клиента

   Как указано в разделе 10.2 OAuth 2.0 [RFC6749], авторизация
   серверу НЕ СЛЕДУЕТ обрабатывать запросы авторизации автоматически
   без согласия пользователя или взаимодействия, за исключением случаев, когда личность
   клиент может быть уверен.Это включает случай, когда пользователь
   ранее одобрил запрос авторизации для данного идентификатора клиента -
   если личность клиента не может быть подтверждена, запрос ДОЛЖЕН
   обрабатываться, как если бы предыдущий запрос не был одобрен.

   Такие меры, как заявленные переадресации по схеме https, МОГУТ быть приняты
   серверы авторизации в качестве подтверждения личности. Некоторые операционные системы могут
   предлагать альтернативные особенности идентификации для конкретной платформы, которые МОГУТ быть
   принято, в зависимости от обстоятельств.

8.7. Поддельные внешние пользовательские агенты

   Собственное приложение, инициирующее запрос авторизации, имеет
   большая степень контроля над пользовательским интерфейсом и потенциально может
   представить поддельный внешний пользовательский агент, то есть встроенный пользовательский агент
   сделано, чтобы появиться как внешний пользовательский агент.Когда все хорошие участники используют внешние пользовательские агенты, преимущество в том, что
   что эксперты по безопасности могут обнаружить злоумышленников, поскольку
   доказательство того, что любой имитирует внешний пользовательский агент, - это плохо. С другой
   стороны, если хорошие и плохие участники одинаково используют встроенные пользовательские агенты,
   плохим актерам не нужно ничего подделывать, что усложняет их обнаружение.
   После обнаружения вредоносного приложения можно будет использовать это
   умение заносить в черный список подпись приложения при сканировании на вредоносное ПО
   программного обеспечения, примите меры по удалению (в случае приложений, распространяемых приложением
   магазинов) и другие меры по снижению воздействия и распространения
   вредоносное приложение.Серверы авторизации также могут напрямую защищать от поддельных внешних
   пользовательские агенты, требуя фактор аутентификации, доступный только для
   настоящие внешние пользовательские агенты.




Denniss & Bradley Best Current Practice [Страница 13] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   Пользователи, которые особенно заботятся о своей безопасности при использовании
   вкладки браузера в приложении могут также выполнять дополнительный шаг по открытию
   запросить в полном браузере из вкладки браузера в приложении и завершить
   авторизация там, как и большинство реализаций in-app
   Шаблон вкладки браузера предлагает такую ​​функциональность.8.8. Вредоносные внешние пользовательские агенты

   Если вредоносное приложение может настроить себя как обработчик по умолчанию
   для URI схемы "https" в операционной системе он сможет
   перехватывать запросы авторизации, которые используют браузер по умолчанию и
   злоупотреблять этой позицией доверия в злонамеренных целях, таких как фишинг
   Пользователь.

   Эта атака не ограничивается OAuth; вредоносное приложение, настроенное в
   таким образом будет представлять общий и постоянный риск для пользователя за пределами
   Использование OAuth нативными приложениями.Многие операционные системы смягчают это
   проблема, требуя явного действия пользователя для изменения значения по умолчанию
   обработчик URI схем http и https.

8.9. Защита от подделки межплатформенных запросов

   В разделе 5.3.5 [RFC6819] рекомендуется использовать параметр "state" для
   связывать клиентские запросы и ответы, чтобы предотвратить CSRF (межсайтовый
   Запросить подлог) атаки.

   Для смягчения атак в стиле CSRF на взаимодействие URI между приложениями
   каналы (так называемая "подделка запросов между приложениями"), это аналогично
   РЕКОМЕНДУЕТСЯ, чтобы собственные приложения включали безопасный случайный код с высокой энтропией.
   номер в параметре "состояние" запроса авторизации и
   отклонять любые входящие ответы авторизации без значения состояния
   который соответствует ожидающему исходящему запросу авторизации.8.10. Устранение путаницы с сервером авторизации

   Для защиты от взломанного или злонамеренного сервера авторизации
   атакует другой сервер авторизации, используемый тем же приложением, это
   ОБЯЗАТЕЛЬНО, чтобы для каждой авторизации использовался уникальный URI перенаправления.
   сервер, используемый приложением (например, путем изменения компонента пути),
   и что ответы на авторизацию отклоняются, если URI перенаправления
   они были получены, не соответствует URI перенаправления в исходящем
   запрос авторизации.

   Собственное приложение ДОЛЖНО хранить URI перенаправления, используемый при авторизации.
   запрос с данными сеанса авторизации (т.э., вместе с «государством»
   и другие связанные данные) и ДОЛЖЕН проверить, что URI, на котором
   получен ответ авторизации в точности совпадает с ним.




Denniss & Bradley Best Current Practice [Страница 14] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   Требование раздела 8.4, в частности, разрешение
   серверы отклоняют запросы с URI, которые не соответствуют тому, что было
   зарегистрированный, также требуется для предотвращения таких атак.8.11. Внешние пользовательские агенты, не связанные с браузером

   Эта передовая практика рекомендует определенный тип внешнего пользователя -
   агент: браузер пользователя. Другие шаблоны внешних пользовательских агентов могут
   также быть жизнеспособным для безопасного и удобного OAuth. Этот документ не делает
   прокомментируйте эти шаблоны.

8.12. Встроенные пользовательские агенты

   В разделе 9 OAuth 2.0 [RFC6749] описаны два подхода для
   приложения для взаимодействия с конечной точкой авторизации. Этот лучший ток
   практика требует, чтобы собственные приложения НЕ ДОЛЖНЫ использовать встроенные пользовательские агенты
   для выполнения запросов авторизации и разрешает эту авторизацию
   конечные точки МОГУТ предпринимать шаги для обнаружения и блокировки запросов авторизации
   во встроенных пользовательских агентах.Соображения безопасности для этих
   требования подробно описаны здесь.

   Встроенные пользовательские агенты - альтернативный метод авторизации собственных
   Программы. Эти встроенные пользовательские агенты небезопасны для использования третьими сторонами.
   к серверу авторизации по определению, поскольку приложение, которое размещает
   встроенный пользовательский агент может получить доступ к полной аутентификации пользователя
   учетные данные, а не только разрешение на авторизацию OAuth, которое было предназначено
   для приложения.

   В типичных реализациях встроенных пользовательских агентов, основанных на веб-представлении,
   хост-приложение может записывать каждое нажатие клавиши, введенное при входе в систему
   форма для ввода имен пользователей и паролей, автоматическая отправка форм
   для обхода согласия пользователя и копирования файлов cookie сеанса и использования их для
   выполнять аутентифицированные действия как пользователь.Даже при использовании доверенными приложениями, принадлежащими той же стороне, что и
   сервер авторизации, встроенные пользовательские агенты нарушают принцип
   наименьшие привилегии, имея доступ к более мощным учетным данным, чем
   они нужны, потенциально увеличивая поверхность атаки.

   Поощрение пользователей вводить учетные данные во встроенном пользовательском агенте
   без обычной адресной строки и видимой проверки сертификата
   функции, которые есть в браузерах, не позволяют пользователю узнать
   если они входят на законный сайт; даже когда они есть, это
   обучает их тому, что можно вводить учетные данные без проверки
   сайт в первую очередь.Denniss & Bradley Best Current Practice [Страница 15] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   Помимо проблем безопасности, встроенные пользовательские агенты не разделяют
   состояние аутентификации с другими приложениями или браузером, требующее
   пользователь должен входить в систему для каждого запроса авторизации, что часто
   считается плохим пользовательским опытом.

9. Соображения IANA

   Этот документ не требует никаких действий со стороны IANA.Раздел 7.1 определяет, как схемы URI частного использования используются для меж-
   связь приложений в потоках протокола OAuth. Этот документ требует в
   Раздел 7.1, что такие схемы основаны на доменных именах, принадлежащих или
   назначен приложению, как рекомендовано в разделе 3.8 [RFC7595]. За
   Раздел 6 [RFC7595], регистрация доменных схем URI с
   IANA не требуется.

10. Ссылки

10.1. Нормативные ссылки

   [RFC2119] Брэднер, С., «Ключевые слова для использования в RFC для обозначения
              Уровни требований », BCP 14, RFC 2119,
              DOI 10.17487 / RFC2119, март 1997 г.,
              .

   [RFC3986] Бернерс-Ли, Т., Филдинг, Р., и Л. Масинтер, "Униформа
              Идентификатор ресурса (URI): Общий синтаксис », STD 66,
              RFC 3986, DOI 10.17487 / RFC3986, январь 2005 г.,
              .

   [RFC6749] Hardt, D., Ed., «Платформа авторизации OAuth 2.0»,
              RFC 6749, DOI 10.17487 / RFC6749, октябрь 2012 г.,
              .

   [RFC7230] Филдинг Р., изд. и J. Reschke, Ed., "Передача гипертекста.
              Протокол (HTTP / 1.1): синтаксис сообщений и маршрутизация »,
              RFC 7230, DOI 10.17487 / RFC7230, июнь 2014 г.,
              .

   [RFC7595] Талер, Д., Эд., Хансен, Т., и Т. Харди, "Рекомендации
              и процедуры регистрации для схем URI », BCP 35,
              RFC 7595, DOI 10.17487 / RFC7595, июнь 2015 г.,
              .

   [RFC7636] Sakimura, N., Ed., Bradley, J., and N. Agarwal, "Proof Key
              для обмена кодом общедоступными клиентами OAuth ", RFC 7636,
              DOI 10.17487 / RFC7636, сентябрь 2015 г.,
              .



Denniss & Bradley Best Current Practice [Страница 16] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


   [RFC8174] Лейба Б., «Неоднозначность прописных и строчных букв в RFC.
              2119 Ключевые слова », BCP 14, RFC 8174, DOI 10.17487 / RFC8174,
              Май 2017 г., .

10.2. Информативные ссылки

   [RFC6819] Lodderstedt, T., Ed., McGloin, M., and P. Hunt, "OAuth 2.0
              Модель угроз и соображения безопасности », RFC 6819,
              DOI 10.17487 / RFC6819, январь 2013 г.,
              .

   [RFC7591] Ричер, Дж., Эд., Джонс, М., Брэдли, Дж., Мачулак, М., и
              П. Хант, "Протокол динамической регистрации клиентов OAuth 2.0",
              RFC 7591, DOI 10.17487 / RFC7591, июль 2015 г.,
              .

   [AppAuth] Рабочая группа OpenID Connect, AppAuth, сентябрь 2017 г.,
              .

   [AppAuth.iOSmacOS]
              Райт, С., Деннисс, В. и др., "AppAuth для iOS и
              macOS ", февраль 2016 г.,
              .

   [AppAuth.Android]
              Макгиннисс, И., Деннисс, В. и др., «AppAuth для Android»,
              Февраль 2016 г., .

   [SamplesForWindows]
              Деннисс В., «OAuth для приложений: образцы для Windows», июль.
              2016,
              .



















Деннисс и Брэдли Best Current Practice [Страница 17] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


Приложение A. Контрольный список поддержки сервера

   Серверы OAuth, поддерживающие собственные приложения, должны:

   1.Поддержка URI перенаправления схемы URI частного использования. Это необходимо
       для поддержки мобильных операционных систем. См. Раздел 7.1.

   2. Поддержка URI перенаправления схемы "https" для использования с общедоступными нативными
       клиенты приложения. Это используется приложениями в расширенных мобильных операциях.
       системы, которые разрешают URI схемы "https", заявленные приложением. Видеть
       Раздел 7.2.

   3. Поддержка URI перенаправления IP-адреса с обратной связью. Это необходимо для поддержки
       настольные операционные системы. См. Раздел 7.3.

   4. Не думайте, что клиенты собственных приложений могут хранить секреты.Если секреты
       распространяются на несколько установок одного и того же нативного приложения, они
       не должны рассматриваться как конфиденциальные. См. Раздел 8.5.

   5. Поддержка PKCE [RFC7636]. Требуется для защиты кода авторизации
       гранты, отправленные государственным клиентам через взаимодействие между приложениями
       каналы. См. Раздел 8.1.

Приложение Б. Детали реализации для конкретной платформы

   Этот документ в первую очередь определяет передовой опыт в общем виде,
   методы ссылки, обычно доступные в различных
   среды.Этот ненормативный раздел документирует реализацию
   подробные сведения о лучших практиках для различных операционных систем.

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

В.1. Детали реализации iOS

   Приложения могут инициировать запрос авторизации в браузере без
   пользователь, покидающий приложение, через класс "SFSafariViewController"
   или его преемник "SFAuthenticationSession", реализующий in-
   шаблон вкладки браузера приложения.Safari можно использовать для обработки запросов на
   старые версии iOS без функции вкладки браузера в приложении.

   Чтобы получить ответ авторизации, обе схемы URI частного использования
   (именуемой «настраиваемая схема URL») перенаправляет и заявляет «https»
   схемы URI (известные как «универсальные ссылки») являются жизнеспособным выбором. Программы
   может запрашивать схемы URI частного использования с ключом "CFBundleURLTypes" в



Деннисс и Брэдли Best Current Practice [Страница 18] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


   файл списка свойств приложения, «Info.plist» и «https»
   схемы URI с использованием функции универсальных ссылок с правом
   файл в приложении и файл ассоциации, размещенный в домене.

   Заявленные URI схемы "https" являются предпочтительным вариантом перенаправления на iOS.
   9 и выше в связи с подтверждением права собственности, предоставленным
   Операционная система.

   Полный образец с открытым исходным кодом включен в AppAuth для iOS и
   Библиотека macOS [AppAuth.iOSmacOS].БИ 2. Подробности реализации Android

   Приложения могут инициировать запрос авторизации в браузере без
   пользователь, покидающий приложение, с помощью функции Android Custom Tab,
   который реализует шаблон вкладок браузера в приложении. По умолчанию пользователя
   браузер может использоваться для обработки запросов, когда ни один браузер не поддерживает
   Пользовательские вкладки.

   Поставщики браузеров Android должны поддерживать протокол Custom Tabs (by
   предоставляя реализацию класса CustomTabsService), чтобы
   обеспечить оптимизацию пользовательского опыта вкладки браузера в приложении для своих
   пользователей.Chrome - один из таких браузеров, в котором реализованы настраиваемые вкладки.

   Чтобы получить ответ авторизации, используются схемы URI частного использования.
   широко поддерживается через неявные намерения Android. Заявлено "https"
   URI перенаправления схемы через ссылки на приложения Android доступны на
   Android 6.0 и выше. Оба типа URI перенаправления зарегистрированы в
   манифест приложения.

   Полный образец с открытым исходным кодом включен в AppAuth для Android.
   Библиотека [AppAuth.Android].

В.3. Детали реализации Windows

   Как традиционные приложения, так и приложения универсальной платформы Windows (UWP) могут
   выполнять запросы авторизации в браузере пользователя.Традиционный
   приложения обычно используют петлевое перенаправление для получения авторизации.
   ответ, и прослушивание интерфейса обратной петли разрешено
   правила брандмауэра по умолчанию. При создании петлевого сетевого сокета
   приложения ДОЛЖНЫ установить параметр сокета "SO_EXCLUSIVEADDRUSE", чтобы предотвратить
   другие приложения, привязанные к тому же сокету.

   Приложения UWP могут использовать перенаправления схемы URI частного использования для получения
   ответ на авторизацию от браузера, который переведет приложение в
   на переднем плане. Известный на платформе как «Активация URI», URI





Denniss & Bradley Best Current Practice [Страница 19] 

RFC 8252 OAuth 2.0 для собственных приложений октябрь 2017 г.


   схема ограничена длиной 39 символов и может включать
   "." символ, создавая схемы на основе коротких обратных доменных имен (как
   требуется в разделе 7.1) возможно.

   В качестве альтернативы приложения UWP могут использовать API брокера веб-аутентификации в
   Режим единого входа (SSO), разработанный внешним пользовательским агентом.
   для потоков авторизации. Файлы cookie используются совместно с вызовами
   брокер, но не предпочтительный браузер пользователя, то есть пользователь
   потребуется снова войти в систему, даже если у них есть активный сеанс в
   их браузер; но сеанс, созданный в брокере, будет
   доступны для последующих приложений, использующих брокера.Персонализации
   пользователь сделал в своем браузере, например, установив пароль
   менеджер, может отсутствовать у брокера. Чтобы квалифицироваться как
   внешний пользовательский агент, брокер ДОЛЖЕН использоваться в режиме SSO.

   Чтобы использовать брокер веб-аутентификации в режиме единого входа, URI перенаправления
   должен иметь форму "msapp: // {appSID}", где "{appSID}" - это приложение
   идентификатор безопасности (SID), который можно найти в приложении
   регистрационную информацию или позвонив в
   Метод "GetCurrentApplicationCallbackUri".В то время как Windows принудительно
   полномочия URI для таких перенаправлений, гарантируя, что только приложение с
   соответствующий SID может получить ответ в Windows, схема URI
   могут быть востребованы приложениями на других платформах без того же
   авторитет присутствует; таким образом, этот тип перенаправления следует рассматривать
   аналогично перенаправлению схемы URI частного использования в целях безопасности.

   Доступен образец с открытым исходным кодом, демонстрирующий эти шаблоны.
   [SamplesForWindows].

В.4. Подробности реализации macOS

   Приложения могут инициировать запрос авторизации по умолчанию пользователя.
   браузер с использованием API платформы для открытия URI в браузере.Чтобы получить ответ авторизации, схемы URI частного использования являются
   хороший выбор URI перенаправления в macOS, так как пользователь возвращается обратно
   в приложение, из которого они запустили запрос. Они зарегистрированы в
   список свойств информации о пакете приложения с помощью
   Ключ "CFBundleURLSchemes". Петлевое перенаправление IP - еще один жизнеспособный
   вариант, и прослушивание интерфейса обратной петли разрешено по умолчанию
   правила брандмауэра.

   Полный образец с открытым исходным кодом включен в AppAuth для iOS и
   macOS [AppAuth.iOSmacOS].







Denniss & Bradley Best Current Practice [Страница 20] 

RFC 8252 OAuth 2.0 для собственных приложений, октябрь 2017 г.


В.5. Подробности реализации Linux

   Открытие запроса авторизации в браузере пользователя по умолчанию
   требуется специальная для дистрибутива команда: "xdg-open" - один из таких инструментов.

   Петлевое перенаправление - это рекомендуемый вариант перенаправления для настольных компьютеров.
   приложения в Linux, чтобы получить ответ авторизации. Приложения НЕ ДОЛЖНЫ
   установите параметры сокета «SO_REUSEPORT» или «SO_REUSEADDR», чтобы
   предотвратить привязку других приложений к тому же сокету.Благодарности

   Авторы выражают признательность Мариусу Скуртеску за работу.
   и Бен Вили Ситтлер, чей дизайн для использования схем URI частного использования
   в собственном приложении клиенты OAuth 2.0 в Google легли в основу
   Раздел 7.1.

   Следующие люди представили идеи, отзывы и формулировки
   это сформировало и сформировало окончательную спецификацию:

   Энди Змолек, Стивен Э. Райт, Брайан Кэмпбелл, Нат Сакимура, Эрик
   Сакс, Пол Мэдсен, Иэн МакГиннисс, Рахул Равикумар, Брено де
   Медейрос, Ханнес Чофениг, Ашиш Джайн, Эрик Уолстрем, Билл
   Фишер, Судхи Умарджи, Майкл Б.Джонс, Витторио Берточчи, Дик
   Хардт, Дэвид Уэйт, Игнасио Фиорентино, Кэтлин Мориарти и Элвин
   Дэвис.

Адреса авторов

   Уильям Деннисс
   Google
   1600 Amphitheatre Pkwy
   Маунтин-Вью, CA 94043
   Соединенные Штаты Америки

   Электронная почта: [email protected]
   URI: http://wdenniss.com/appauth


   Джон Брэдли
   Ping Identity

   Телефон: +1 202-630-5272
   Почта: [email protected]
   URI: http://www.thread-safe.com/p/appauth.html






Деннисс и Брэдли Best Current Practice [Страница 21]
 
Палитра

- Дизайнер цветовых схем

Влюблен в цвета с 2002 года.
  1. Приложение Paletton
  2. Colorpedia
  3. О компании Paletton
  4. О компании Paletton

Paletton.com - это дизайнерский инструмент цвета, предназначенный для создания цветовых комбинаций, которые хорошо сочетаются друг с другом. Он использует классическую теорию цвета с древним художественным цветовым кругом RYB для создания цветовых палитр от одного до четырех оттенков, каждая из пяти разных оттенков. Можно выбрать различные стили предварительного просмотра, чтобы проверить и просмотреть цвета в комбинациях, доступно множество примеров, чтобы увидеть палитру, используемую в дизайне веб-сайта, дизайне пользовательского интерфейса или в произвольно нарисованном изображении.Предварительный просмотр ткани Tartan также доступен для тех, кто интересуется текстилем и дизайном интерьера.

Этот инструмент палитры использует различные цветовые модели для объединения смежных цветов и / или дополнительных цветов к основному оттенку. Выбирайте модели от монохромных до трехцветных или четырехцветных наборов цветов, с дополнением или без него (противоположный оттенок), наслаждайтесь даже режимом свободного стиля. Поиграйте с яркостью и насыщенностью палитры, выберите из предустановленных предустановок или создайте случайные палитры.Уникальный фильтр имитации зрения имитирует палитру, которую видят люди с различной слабостью зрения, дальтонизмом, различными вариантами дальтонизма (протанопия, дейтеранопия, тританопия, протаномалия, дейтераномалия, тританомалия, дисхроматопсия или ахроматопсия), а также несколько гамма-симуляций (симуляция слишком яркого дисплея или слишком темной печати), обесцвечивания, преобразования оттенков серого или веб-цветов (устаревшая 216-цветная палитра). Палитру можно экспортировать во множество различных форматов (HTML, CSS, LESS, XML, текст, изображение PNG, палитра образцов Photoshop ACO или формат палитры GIMP GPL) для раскрашивания ваших работ.Проверьте цветовой контраст всех цветовых пар, используемых в палитре, и проверьте, соответствует ли цветовой контраст требованиям WCAG. Подробнее о цветах в Colorpedia.

Paletton является преемником предыдущего приложения Color Scheme Designer 3, которым с 2009 года пользовались почти 20 миллионов посетителей (в то время как первая версия была опубликована в 2002 году), как профессиональных дизайнеров, так и любителей, интересующихся дизайном, дизайном мобильных или настольных приложений или веб-дизайном. дизайн интерьера, мода или обустройство дома и переделки.Полная история Paletton в Colorpedia.

Javascript не обнаружен. Для этого приложения требуется Javascript.

Майкл Авенатти приговорен к 2-1 / 2 годам тюрьмы за вымогательство у Nike

Breadcrumb Trail Links

  1. PMN Technology
  2. PMN Business

Автор статьи:

Содержание статьи

NEW YORK - Michael Avenatti Дерзкий адвокат, прославившийся тем, что представлял порноактрису Сторми Дэниелс в судебных процессах против Дональда Трампа до того, как волна уголовных обвинений положила конец его юридической карьере, был приговорен в четверг к 2-1 / 2 годам тюремного заключения за попытку вымогательства у Nike Inc.

Окружной судья США Пол Гардефе на Манхэттене сказал, что 50-летний Авенатти «опьянел от мощи своей платформы», предав своего клиента, молодежного тренера по баскетболу, ради собственной выгоды.

«Mr. «Поведение Авенатти было возмутительным», - сказал Гардефе. «Он украл утверждения своего клиента и использовал эти утверждения для продвижения своей собственной программы, которая заключалась в вымогательстве миллионов долларов у Nike для себя».

Объявление

Это объявление еще не загружено, но ваша статья продолжается ниже.

Содержание статьи

Приговор увенчивает крутой провал для когда-то малоизвестного адвоката, который в 2018 году стал популярным в кабельных новостях и социальных сетях, пренебрегая тогдашним президентом Трампом и даже флиртуя с его собственным успехом в Белом доме.

Авенатти по-прежнему сталкивается с тремя другими судебными процессами по делу о мошенничестве, в том числе по обвинению в мошенничестве Дэниэлса, чье юридическое имя - Стефани Клиффорд.

В деле Nike Авенатти был признан виновным в угрозе разоблачения предполагаемых коррупционных выплат компании спортивной одежды семьям перспективных баскетболистов в колледже, если только компания не выплатит ему и другому юристу до 25 миллионов долларов за проведение расследования.

Nike отрицает правонарушения. «Приговор и приговор говорят сами за себя», - говорится в заявлении.

Recordings показала, как Авенатти говорил юристам Nike, что он «взорвет компанию» и сотрет с ее фондовой биржи 10 миллиардов долларов, если она не подчинится его требованиям.

Объявление

Это объявление еще не загружено, но ваша статья продолжается ниже.

Содержание статьи

Прокуроры заявили, что Авенатти рассчитывал на большую зарплату, чтобы покрыть свои долги.

Авенатти был также признан виновным в мошенничестве с тренером Гэри Франклином, не сказав ему, что он не согласится, если не будет проведено расследование.

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

ПОТЕРЯЯ ПУТЬ

Адвокаты Авенатти заявили, что он подаст апелляцию на приговор, вынесенный в феврале 2020 года.

Прежде чем узнать свою судьбу, Авенатти задохнулся, признав, что заблудился после многих лет «борьбы за маленького парня с Голиафами».Разведенный отец троих детей извинился перед Франклином и другими.

«Телевидение и Твиттер, ваша честь, ничего не значат», - сказал Авенатти судье. «Все хотят ехать с вами в лимузине, но очень немногие готовы сесть рядом с вами в автобусе. Еще меньше, ваша честь, готовы отвечать на ваши звонки из тюрьмы.

Объявление

Это объявление еще не загружено, но ваша статья продолжается ниже.

Содержание статьи

«Я и я один разрушили мою карьеру, мои отношения, мою жизнь», - добавил он.

Франклин был расстроен, когда Nike перестала спонсировать его программу, и сказал, что просто хотел восстановить их отношения. Он сказал, что Авенатти «разрушил мою репутацию» в своей общине.

Авенатти искал не более шести месяцев тюрьмы.

Прокуроры добивались «очень существенного» срока, а сотрудники службы пробации рекомендовали восемь лет.

Но судья сказал, что он принял во внимание «искреннее раскаяние» Авенатти и то, что он провел три месяца в начале прошлого года в «ужасных условиях» в тюрьме на Манхэттене, а также роль другого адвоката, которому не были предъявлены обвинения.

Авенатти все еще предстанет перед судом 20 июля в Калифорнии по обвинению в краже почти 10 миллионов долларов у пяти клиентов, а также второй суд по обвинениям в банкротстве, банковском и налоговом мошенничестве.

Ему также грозит январский суд в Манхэттене по обвинению в мошенничестве с Дэниелсом из доходов от книжного контракта.

Дэниэлс подал в суд на Трампа в связи с соглашением от 2016 года не обсуждать предполагаемые сексуальные контакты десятилетней давности, которые Трамп отрицает.

Авенатти не признал себя виновным по всем пунктам обвинения.(Репортаж Джонатана Стемпела из Нью-Йорка; редактирование Джонатана Оатиса и Говарда Голлера)

Поделитесь этой статьей в своей социальной сети

Реклама

Это объявление еще не загружено, но ваша статья продолжается ниже.

Подробный отчет об инновационной экономике от The Logic, предоставленный вам в партнерстве с Financial Post.

    Главные новости Financial Post

    Подпишитесь, чтобы получать ежедневные главные новости от Financial Post, подразделения Postmedia Network Inc.

    Нажимая на кнопку подписки, вы соглашаетесь на получение вышеуказанного информационного бюллетеня от Postmedia Network Inc. Вы можете отказаться от подписки в любое время, щелкнув ссылку для отказа от подписки внизу наших электронных писем. Postmedia Network Inc. | 365 Bloor Street East, Торонто, Онтарио, M4W 3L4 | 416-383-2300

    Спасибо за регистрацию!

    Приветственное письмо уже в пути. Если вы его не видите, проверьте папку нежелательной почты.

    Следующий выпуск главных новостей Financial Post скоро будет в вашем почтовом ящике.

    Комментарии

    Postmedia стремится поддерживать живой, но гражданский форум для обсуждения и поощрять всех читателей делиться своим мнением о наших статьях. На модерацию комментариев может потребоваться до часа, прежде чем они появятся на сайте. Мы просим вас, чтобы ваши комментарии были актуальными и уважительными. Мы включили уведомления по электронной почте - теперь вы будете получать электронное письмо, если получите ответ на свой комментарий, есть обновление в цепочке комментариев, на которую вы подписаны, или если пользователь, на которого вы подписаны, комментарии.Посетите наши Принципы сообщества для получения дополнительной информации и подробностей о том, как изменить настройки электронной почты.

    Карта схемы оплаты лекарств - HSE.ie

    В рамках схемы оплаты лекарств (DPS) человек или семья будут платить не более 114 евро каждый календарный месяц за:

    • утвержденных прописанных лекарств и лекарств
    • расходы на аренду Аппарат постоянного положительного давления в дыхательных путях (CPAP)
    • Расходы на аренду кислорода

    Если у вас нет медицинской карты и вы платите более 114 евро в месяц за любой из них, вам следует подать заявление.

    Кто может подать заявление

    Любой, кто «обычно проживает» в Ирландской Республике, может подать заявление. «Обычный резидент» означает, что вы живете здесь и собираетесь прожить здесь не менее одного года.

    Отсутствует проверка средств для карты DPS.

    Заявления семьи

    Семья - это взрослый, его супруг или партнер и все иждивенцы.

    Вы можете включить любого члена семьи, независимо от возраста, который не может полностью поддерживать себя и имеет:

    • физический недостаток
    • умственный недостаток
    • болезнь

    Вам необходимо будет приложить медицинское заключение для заявители, которые не могут содержать себя.

    Подача заявления, если у вас есть дети, обучающиеся в очной форме

    Если вы подаете заявление как семья, у вас могут быть дети в возрасте от 18 до 23 лет, обучающиеся в очной форме. Если да, вы можете добавить их на свою карту.

    Для этого:

    1. Заполните раздел 2 формы заявки на схему оплаты лекарств
    2. Поставьте подпись и поставьте печать учебного заведения
    3. Включите ее в свое заявление

    Проверьте статус заявки

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

    Когда вы подаете заявку онлайн, вы получаете ссылочный номер в конце процесса подачи заявки.

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

    Кибератака на наши ИТ-системы привела к нарушению работы наших служб. Онлайн-система подачи заявок DPS в настоящее время недоступна.

    Как долго карты действительны для

    На вашей карте будет дата «Действительна до».

    Мы свяжемся с вами до этой даты, чтобы проверить, есть ли какие-либо изменения в ваших данных. Если изменений не будет, мы вышлем вам новую карту.

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

    Утеря карты или изменение реквизитов

    Свяжитесь с нами, если ваша:

    • карта потеряна или украдена
    • изменение контактных данных

    Полномостовой инвертор - обзор

    16.2.3 Однофазный полномостовой инвертор

    Однофазный мостовой инвертор изображен на рисунке 16.4, где есть четыре переключателя питания: Q 1 –Q 4 . Пары переключателей (Q 1 , Q 4 ) и (Q 2 , Q 3 ) работают по очереди. Два вывода нагрузки подключены к средним точкам левой и правой ножек мостовой схемы соответственно. Рассматриваемая нагрузка - это нагрузка RL с фазовым углом импеданса ϕ . Кроме того, есть четыре диода, D 1 –D 4 , которые используются для обеспечения путей для тока нагрузки, управляемого накопленной энергией в индукторе нагрузки.Период цикла обозначается T .

    Рисунок 16.4. Однофазный мостовой инвертор и формы выходных сигналов.

    (a) Полномостовой инвертор, (b) формы сигналов выходного напряжения и тока.

    Принцип работы однофазного полномостового инвертора иллюстрируется следующим образом. В течение интервала 0 ≤ t < t 1 , пары переключателей (Q 1 , Q 4 ) и (Q 2 , Q 3 ) выключены, но пара диодов (D 1 , D 4 ) принудительно включается энергией, оставшейся в индукторе нагрузки.Следовательно, в это время выходное напряжение v, , o составляет V, d , а ток индуктора i o постепенно уменьшается по амплитуде. В момент времени t 1 ток нагрузки i o становится нулевым, так что диоды D 1 и D 4 выключены, но переключатели Q 1 и Q 4 включаются при срабатывании. Следовательно, в течение интервала времени t 1 t < t 2 , напряжение на нагрузке все еще будет v o = V d , но направление текущий i o изменен на положительный.В момент времени t 2 отправляются триггерные сигналы, чтобы выключить Q 1 и Q 4 , но включить Q 2 и Q 3 . Таким образом, переключатели Q 1 и Q 4 выключаются немедленно, но Q 2 и Q 3 не могут быть включены немедленно, поскольку энергия, накопленная в индукторе нагрузки, заставляет диоды D 2 и D 3 о. В этот момент напряжение нагрузки v o становится равным - V d , но ток нагрузки i o сохраняет направление потока, но со временем снижает его величину.Когда время достигает t 3 , ток нагрузки уменьшается до нуля, так что диоды D 2 и D 3 выключены, а переключатели Q 2 и Q 3 включены при срабатывании триггера. Следовательно, в интервале t 3 t < t 4 выходное напряжение на нагрузке по-прежнему равно - В d , но ток нагрузки меняет направление и увеличивает свою амплитуду как время проходит.В момент времени t 4 триггерные сигналы отключают Q 2 и Q 3 , но не могут сразу включиться Q 1 и Q 4 , поскольку энергия, накопленная в индукторе нагрузки, вынуждает диоды D 1 и D 4 включить. Следовательно, в интервале t 4 t < t 5 выходное напряжение v o изменяется на V d , но ток нагрузки сохраняет прежнее направление но со временем уменьшает его амплитуду.Фактически инвертор в течение t 4 t < t 5 повторяет рабочий процесс инвертора на интервале 0 ≤ t < t 1 .

    Когда либо пара переключателей (Q 1 , Q 4 ) или (Q 2 , Q 3 ) включена, напряжение нагрузки v o и ток нагрузки i o имеют одинаковую полярность, что означает, что источник постоянного тока обеспечивает питание нагрузки.С другой стороны, когда либо пара диодов (D 1 , D 4 ) или (D 2 , D 3 ) включена, напряжение нагрузки v o и ток нагрузки i o имеют противоположную полярность, что указывает на то, что нагрузка возвращает мощность на сторону постоянного тока.