Модуль: Tty Приватный
- Определено в:
- utils/tty.rb,
sorbet/rbi/dsl/tty.rbi
Обзор
Этот модуль является частью приватного API. Этот модуль можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого модуля, поскольку он может быть удалён или изменён без предупреждения.
Различные вспомогательные функции для взаимодействия с TTY.
Краткое описание констант свернуть
- COLOR_CODES =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
T.let( { red: 31, green: 32, yellow: 33, blue: 34, magenta: 35, cyan: 36, default: 39, }.freeze, T::Hash[Symbol, Integer], )
- STYLE_CODES =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
T.let( { reset: 0, bold: 1, italic: 3, underline: 4, strikethrough: 9, no_underline: 24, }.freeze, T::Hash[Symbol, Integer], )
- SPECIAL_CODES =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
T.let( { up: "1A", down: "1B", right: "1C", left: "1D", erase_line: "K", erase_char: "P", }.freeze, T::Hash[Symbol, String], )
- CODES =
Эта константа является частью приватного API. Эту константу можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этой константы, поскольку она может быть удалена или изменена без предупреждения.
T.let(COLOR_CODES.merge(STYLE_CODES).freeze, T::Hash[Symbol, Integer])
Краткое описание методов класса свернуть
- .blue ⇒ String приватный
- .bold ⇒ String приватный
- .clear_to_end ⇒ String приватный
- .color? ⇒ Boolean приватный
- .current_escape_sequence ⇒ String приватный
- .cyan ⇒ String приватный
- .default ⇒ String приватный
- .down ⇒ String приватный
- .erase_char ⇒ String приватный
- .erase_line ⇒ String приватный
- .green ⇒ String приватный
- .height ⇒ Integer приватный
- .hide_cursor ⇒ String приватный
- .italic ⇒ String приватный
- .left ⇒ String приватный
- .magenta ⇒ String приватный
- .move_cursor_beginning ⇒ String приватный
- .move_cursor_down(line_count) ⇒ String приватный
- .move_cursor_up_beginning(line_count) ⇒ String приватный
- .no_underline ⇒ String приватный
- .red ⇒ String приватный
- .reset ⇒ String приватный
- .reset_escape_sequence! ⇒ void приватный
- .right ⇒ String приватный
- .show_cursor ⇒ String приватный
- .size ⇒ Array<(Integer, Integer)>? приватный
- .strikethrough ⇒ String приватный
- .strip_ansi(string) ⇒ String приватный
- .truncate(string) ⇒ String приватный
- .underline ⇒ String приватный
- .up ⇒ String приватный
- .width ⇒ Integer приватный
Синхронизируйте с
columnsв Library/Homebrew/utils/tty.sh. - .with(stream, &_block) ⇒ void приватный
- .yellow ⇒ String приватный
Подробное описание методов
.blue ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
11 | # File 'sorbet/rbi/dsl/tty.rbi', line 11 def blue; end |
.bold ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
14 | # File 'sorbet/rbi/dsl/tty.rbi', line 14 def bold; end |
.clear_to_end ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
79 80 81 | # File 'utils/tty.rb', line 79 def clear_to_end "\033[K" end |
.color? ⇒ Boolean
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
160 161 162 163 164 165 166 167 168 | # File 'utils/tty.rb', line 160 def color? require "env_config" return false if Homebrew::EnvConfig.no_color? return true if Homebrew::EnvConfig.color? return false if @stream.blank? @stream.tty? end |
.current_escape_sequence ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
120 121 122 123 124 | # File 'utils/tty.rb', line 120 def current_escape_sequence return "" if @escape_sequence.nil? "\033[#{@escape_sequence.join(";")}m" end |
.cyan ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
17 | # File 'sorbet/rbi/dsl/tty.rbi', line 17 def cyan; end |
.default ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
20 | # File 'sorbet/rbi/dsl/tty.rbi', line 20 def default; end |
.down ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
23 | # File 'sorbet/rbi/dsl/tty.rbi', line 23 def down; end |
.erase_char ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
26 | # File 'sorbet/rbi/dsl/tty.rbi', line 26 def erase_char; end |
.erase_line ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
29 | # File 'sorbet/rbi/dsl/tty.rbi', line 29 def erase_line; end |
.green ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
32 | # File 'sorbet/rbi/dsl/tty.rbi', line 32 def green; end |
.height ⇒ Integer
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
104 105 106 | # File 'utils/tty.rb', line 104 def height @height ||= T.let(size&.first || `/usr/bin/tput lines 2>/dev/null`.presence&.to_i || 40, T.nilable(Integer)) end |
.hide_cursor ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
84 85 86 | # File 'utils/tty.rb', line 84 def hide_cursor "\033[?25l" end |
.italic ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
35 | # File 'sorbet/rbi/dsl/tty.rbi', line 35 def italic; end |
.left ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
38 | # File 'sorbet/rbi/dsl/tty.rbi', line 38 def left; end |
.magenta ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
41 | # File 'sorbet/rbi/dsl/tty.rbi', line 41 def magenta; end |
.move_cursor_beginning ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
69 70 71 | # File 'utils/tty.rb', line 69 def move_cursor_beginning "\033[0G" end |
.move_cursor_down(line_count) ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
74 75 76 | # File 'utils/tty.rb', line 74 def move_cursor_down(line_count) "\033[#{line_count}B" end |
.move_cursor_up_beginning(line_count) ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
64 65 66 | # File 'utils/tty.rb', line 64 def move_cursor_up_beginning(line_count) "\033[#{line_count}F" end |
.no_underline ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
44 | # File 'sorbet/rbi/dsl/tty.rbi', line 44 def no_underline; end |
.red ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
47 | # File 'sorbet/rbi/dsl/tty.rbi', line 47 def red; end |
.reset ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
50 | # File 'sorbet/rbi/dsl/tty.rbi', line 50 def reset; end |
.reset_escape_sequence! ⇒ void
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
127 128 129 | # File 'utils/tty.rb', line 127 def reset_escape_sequence! @escape_sequence = T.let(nil, T.nilable(T::Array[Integer])) end |
.right ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
53 | # File 'sorbet/rbi/dsl/tty.rbi', line 53 def right; end |
.show_cursor ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
89 90 91 | # File 'utils/tty.rb', line 89 def show_cursor "\033[?25h" end |
.size ⇒ Array<(Integer, Integer)>?
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
94 95 96 97 98 99 100 101 | # File 'utils/tty.rb', line 94 def size return @size if defined?(@size) height, width = `/bin/stty size 2>/dev/null`.presence&.split&.map(&:to_i) return if height.nil? || width.nil? @size = T.let([height, width], T.nilable([Integer, Integer])) end |
.strikethrough ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
56 | # File 'sorbet/rbi/dsl/tty.rbi', line 56 def strikethrough; end |
.strip_ansi(string) ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
59 60 61 | # File 'utils/tty.rb', line 59 def strip_ansi(string) string.gsub(/\033\[\d+(;\d+)*m/, "") end |
.truncate(string) ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
115 116 117 | # File 'utils/tty.rb', line 115 def truncate(string) (w = width).zero? ? string.to_s : (string.to_s[0, w - 4] || "") end |
.underline ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
59 | # File 'sorbet/rbi/dsl/tty.rbi', line 59 def underline; end |
.up ⇒ String
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
62 | # File 'sorbet/rbi/dsl/tty.rbi', line 62 def up; end |
.width ⇒ Integer
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
Синхронизировать с columns в Library/Homebrew/utils/tty.sh.
110 111 112 | # File 'utils/tty.rb', line 110 def width @width ||= T.let(size&.second || `/usr/bin/tput cols 2>/dev/null`.presence&.to_i || 80, T.nilable(Integer)) end |
.with(stream, &_block) ⇒ void
Этот метод является частью приватного API. Этот метод можно использовать только в репозитории Homebrew/brew. Сторонним разработчикам по возможности следует избегать использования этого метода, так как он может быть удалён или изменён без предупреждения.
Этот метод возвращает неопределённое значение.
49 50 51 52 53 54 55 56 | # File 'utils/tty.rb', line 49 def with(stream, &_block) previous_stream = @stream @stream = T.let(stream, T.nilable(T.any(IO, StringIO))) yield stream ensure @stream = T.let(previous_stream, T.nilable(T.any(IO, StringIO))) end |
.yellow ⇒ String
Этот метод является частью закрытого API. Этот метод можно использовать только в репозитории Homebrew/brew. По возможности сторонним разработчикам следует избегать использования этого метода, поскольку он может быть удалён или изменён без предупреждения.
65 | # File 'sorbet/rbi/dsl/tty.rbi', line 65 def yellow; end |
© 2009–present Homebrew contributors
Licensed under the BSD 2-Clause License.
https://docs.brew.sh/rubydoc/Tty.html