ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

ΠŸΠ°Ρ€Π° слов ΠΎΡ‚ нашСго translate-Π±ΡŽΡ€ΠΎ: ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ всС стрСмятся ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ самыС свСТиС ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹ ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ, ΠΈ ΠΌΡ‹ Π½Π΅ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅. Но Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ β€” это Π½Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ обновляСтся Ρ€Π°Π· Π² нСдСлю. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π²Π΅Π»ΠΈ для вас ΡΡ‚Π°Ρ‚ΡŒΡŽ Антуана Π‘ΠΎΠΏΡ€Π΅, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΡƒΡŽ вСсной 2018 Π³ΠΎΠ΄Π°: нСсмотря Π½Π° солидный ΠΏΠΎ соврСмСнным ΠΌΠ΅Ρ€ΠΊΠ°ΠΌ «возраст», Π½Π° наш взгляд, ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ потСрял Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ это сСрия ΠΈΠ· Π΄Π²ΡƒΡ… статСй, Π½ΠΎ ΠΌΡ‹ приняли Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΈΡ… Π² ΠΎΠ΄ΠΈΠ½ большой пост.

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ особоС мСсто Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΉ истории, Π½ΠΎ Π² послСдниС дСсятилСтия ΠΎΠ½ΠΈ Β«Π²Ρ‹Π½ΡƒΠΆΠ΄Π΅Π½Ρ‹Β» Π±Ρ‹Π»ΠΈ Π±ΡƒΠΊΠ²Π°Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΆΠΈΠ²Π°Ρ‚ΡŒ вмСстС с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой Π½Π° Ρ„ΠΎΠ½Π΅ повсСмСстно Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ графичСских интСрфСйсов. Эмуляторы Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² Π·Π°ΠΌΠ΅Π½ΠΈΠ»ΠΈ своих Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒΠ΅Π², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π±Ρ‹Π»ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ систСм Π½Π° ΠΏΠ΅Ρ€Ρ„ΠΎΠΊΠ°Ρ€Ρ‚Π°Ρ… ΠΈ Ρ‚ΡƒΠΌΠ±Π»Π΅Ρ€Π°Ρ…. Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ дистрибутивы ΠΏΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ с Ρ†Π΅Π»Ρ‹ΠΌ мноТСством эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° всСх Ρ„ΠΎΡ€ΠΌ ΠΈ расцвСток. И ΠΏΠΎΠΊΠ° ΠΌΠ½ΠΎΠ³ΠΈΠ΅ спокойно Π΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΡƒΡŽΡ‚ΡΡ стандартным Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСдоставляСтся ΠΈΡ… Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ срСдой, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ с Π³ΠΎΡ€Π΄ΠΎΡΡ‚ΡŒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΎΡ‚ΠΊΡ€ΠΎΠ²Π΅Π½Π½ΠΎ экзотичСскоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для запуска своСй любимой ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΈΠ»ΠΈ тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°. Но, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ ΠΈΠ· этой ΡΡ‚Π°Ρ‚ΡŒΠΈ, Π½Π΅ всС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π±Ρ‹Π»ΠΈ созданы ΠΏΠΎ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΎΠ±Ρ€Π°Π·Ρƒ ΠΈ подобию: ΠΎΠ½ΠΈ сильно Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ собой ΠΏΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ ΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ.

НСкоторыС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ прямо ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Π΄Ρ‹Ρ€Ρ‹ Π² бСзопасности, плюс, Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΎΠ±Π»Π°Π΄Π°Π΅Ρ‚ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Ρ€Π°Π·Π½Ρ‹ΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΎΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ интСрфСйса с Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ Π΄ΠΎ сцСнариСв. Π₯отя ΠΌΡ‹ рассмотрСли эмуляторы Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² Π² Π΄Π°Π»Π΅ΠΊΠΎΠΌ ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ, эта ΡΡ‚Π°Ρ‚ΡŒΡ β€” ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ читатСлям ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² 2018 Π³ΠΎΠ΄Ρƒ. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π° Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ оцСниваСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

Π’ΠΎΡ‚ рассмотрСнныС ΠΌΠ½ΠΎΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹:

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, это Π½Π΅ самыС свСТиС вСрсии, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ я ограничивался ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ сборками Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ написания ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρƒ мСня ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ Ρ€Π°ΡΠΊΠ°Ρ‚Π°Ρ‚ΡŒ Π½Π° Debian 9 ΠΈΠ»ΠΈ Fedora 27. ЕдинствСнноС ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ β€” Alacritty. Он являСтся ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠΌ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² с GPU-ускорСниСм ΠΈ написан Π½Π° Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠΌ ΠΈ Π½ΠΎΠ²ΠΎΠΌ для этой Π·Π°Π΄Π°Ρ‡ΠΈ языкС β€” Rust. Π― ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΠ» ΠΈΠ· своСго ΠΎΠ±Π·ΠΎΡ€Π° Π²Π΅Π±-Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ (Π² Ρ‚ΠΎΠΌ числС, ΠΈ Π½Π° Electron), ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ тСсты ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΠΈΡ… ΠΊΡ€Π°ΠΉΠ½Π΅ Π½ΠΈΠ·ΠΊΡƒΡŽ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ.

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° юникода

Π‘Π²ΠΎΠΈ тСсты я Π½Π°Ρ‡Π°Π» с ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ юникода. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ тСстом Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² Π±Ρ‹Π»ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ½Ρ‹ΠΌΠΈ строки ΠΎ юникодС ΠΈΠ· ΡΡ‚Π°Ρ‚ΡŒΠΈ Π½Π° Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ: «é, Ξ”, Π™, Χ§, Ω…, ΰΉ—, あ, 叢, 葉 ΠΈ 말». Π­Ρ‚ΠΎΡ‚ простой тСст ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΌΠΎΠΆΠ΅Ρ‚ Π»ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ. Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π» xterm Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ арабский символ Mem Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ:

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

По Π΄Π΅Ρ„ΠΎΠ»Ρ‚Ρƒ xterm ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ классичСский «фиксированный» ΡˆΡ€ΠΈΡ„Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, согласно всС Ρ‚ΠΎΠΉ ΠΆΠ΅ Π’ΠΈΠΊΠΈ, ΠΈΠΌΠ΅Π΅Ρ‚ «сущСствСнный ΠΎΡ…Π²Π°Ρ‚ юникода с 1997 Π³ΠΎΠ΄Π°Β». Π’ этом ΡˆΡ€ΠΈΡ„Ρ‚Π΅ происходит Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ заставляСт символ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π²ΠΈΠ΄Π΅ пустой Ρ€Π°ΠΌΠΊΠΈ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ ΡˆΡ€ΠΈΡ„Ρ‚Π° тСкста Π΄ΠΎ 20+ ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² символ Π½Π°ΠΊΠΎΠ½Π΅Ρ†-Ρ‚ΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. Однако Ρ‚Π°ΠΊΠΎΠΉ «фикс» Π»ΠΎΠΌΠ°Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… символов юникода:

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π­Ρ‚ΠΈ ΡΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚Ρ‹ Π±Ρ‹Π»ΠΈ сдСланы Π² Fedora 27, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΎΠ½Π° Π΄Π°Π²Π°Π»Π° Π»ΡƒΡ‡ΡˆΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹, Π½Π΅ΠΆΠ΅Π»ΠΈ Debian 9, Π³Π΄Π΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ старыС вСрсии Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² (Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ β€” mlterm) Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ со ΡˆΡ€ΠΈΡ„Ρ‚Π°ΠΌΠΈ. К ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, это Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Π² Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ… вСрсиях.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ строки Π² xterm. ΠžΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ΡΡ, символ Mem ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π·Π° Π½ΠΈΠΌ Semitic Qoph относятся ΠΊ сцСнариям начСртания RTL (right-to-left), поэтому тСхничСски ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ справа Π½Π°Π»Π΅Π²ΠΎ. Π’Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Firefox 57, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΡƒΡŽ Π²Ρ‹ΡˆΠ΅ строку. Π‘ΠΎΠ»Π΅Π΅ простым Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ RTL-тСкста являСтся слово Β«Π‘Π°Ρ€Π°Β» Π½Π° ΠΈΠ²Ρ€ΠΈΡ‚Π΅ (Χ©Χ¨Χ”). Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° Π’ΠΈΠΊΠΈ ΠΎ Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… тСкстах Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

«МногиС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ тСкст. НапримСр, СврСйскоС имя Β«Π‘Π°Ρ€Π°Β» состоит ΠΈΠ· символов син (Χ©) (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ появляСтся справа), Π·Π°Ρ‚Π΅ΠΌ Ρ€Π΅Ρˆ (Χ¨) ΠΈ, Π½Π°ΠΊΠΎΠ½Π΅Ρ†, Ρ…Π΅ (Χ”) (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ слСва)Β».

МногиС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π½Π΅ проходят этот тСст: Alacritty, VTE-ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Gnome ΠΈ XFCE, urxvt, st ΠΈ xterm ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ Β«Π‘Π°Ρ€Π°Β» Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΌΡ‹ записывали это имя ΠΊΠ°ΠΊ «Арас».

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Другая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… тСкстов Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π½Π°Π΄ΠΎ ΠΊΠ°ΠΊ-Ρ‚ΠΎ Π²Ρ‹Ρ€ΠΎΠ²Π½ΡΡ‚ΡŒ, особСнно Ссли Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ смСшСнии RTL ΠΈ LTR-тСкстов. Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΈ RTL Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ с ΠΏΡ€Π°Π²ΠΎΠΉ стороны ΠΎΠΊΠ½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, Π½ΠΎ Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ для Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ², ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с LTR-английским? Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΊΠ°ΠΊΠΈΠΌΠΈ-Ρ‚ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ ΠΈ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ вСсь тСкст ΠΏΠΎ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ (Π² Ρ‚ΠΎΠΌ числС, ΠΈ Π² Konsole). Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΡΠ²Π»ΡΡŽΡ‚ΡΡ pterm ΠΈ mlterm, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ стандартов ΠΈ Π²Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ строки ΠΏΠΎ ΠΏΡ€Π°Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ.

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ вставки

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ критичСская ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я для сСбя ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ», β€” это Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ вставки. Π₯отя ΡˆΠΈΡ€ΠΎΠΊΠΎ извСстно, Ρ‡Ρ‚ΠΎ заклинания Ρ‚ΠΈΠΏΠ°:

$ curl http://example.com/ | sh

ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡƒΡˆ-ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ выполнСния ΠΊΠΎΠ΄Π°, ΠΌΠ°Π»ΠΎ ΠΊΡ‚ΠΎ Π·Π½Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ скрытыС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² консоль ΠΏΡ€ΠΈ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ-вставкС ΠΈΠ· Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°, Π΄Π°ΠΆΠ΅ послС Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ осмотра. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΎΡ‡Π½Ρ‹ΠΉ сайт Π”ΠΆΠ°Π½Π½Π° Π₯ΠΎΡ€Π½Π° блСстящС ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ выглядящая Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°:

git clone git: //git.kernel.org/pub/scm/utils/kup/kup.git

прСвращаСтся ΠΏΡ€ΠΈ вставкС с сайта Π₯ΠΎΡ€Π½Π° Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» Π²ΠΎΡ‚ Π² Ρ‚Π°ΠΊΡƒΡŽ Π½Π΅ΠΏΡ€ΠΈΡΡ‚Π½ΠΎΡΡ‚ΡŒ:

git clone /dev/null;
    clear;
	echo -n "Hello ";
	whoami|tr -d 'n';
	echo -e '!nThat was a bad idea. Don'"'"'t copy code from websites you don'"'"'t trust! 
	Here'"'"'s the first line of your /etc/passwd: ';
	head -n1 /etc/passwd
	git clone git://git.kernel.org/pub/scm/utils/kup/kup.git

Как это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? ВрСдоносный ΠΊΠΎΠ΄ вынСсСн Π² Π±Π»ΠΎΠΊ <spΠ°n>, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ ΠΈΠ· поля зрСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ срСдствами CSS.

Π Π΅ΠΆΠΈΠΌ Bracketed paste явно ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π½Π΅ΠΉΡ‚Ρ€Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ. Π’ этом Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ вставляСмый тСкст Π² ΠΏΠ°Ρ€Ρƒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠΎΠ±Ρ‰ΠΈΡ‚ΡŒ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅ ΠΎ происхоТдСнии этого тСкста. Π’Π°ΠΊ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ сигнал, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ вставляСмый тСкст. ВсС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹, Π²ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ ΠΏΠΎΡ‡Ρ‚Π΅Π½Π½ΠΎΠ³ΠΎ xterm, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π΄Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Π½ΠΎ вставка Π² Bracketed-Ρ€Π΅ΠΆΠΈΠΌΠ΅ нуТдаСтся Π² ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΈΠ»ΠΈ прилоТСния, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π΅. НапримСр, ПО ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ GNU Readline (Ρ‚ΠΎΡ‚ ΠΆΠ΅ Bash), нуТдаСтся Π² Ρ„Π°ΠΉΠ»Π΅ ~ / .inputrc:

set enable-bracketed-paste on

К соТалСнию, тСст-сайт Π₯ΠΎΡ€Π½Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ эту Π·Π°Ρ‰ΠΈΡ‚Ρƒ Ρ‡Π΅Ρ€Π΅Π· само Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста ΠΈ ΠΏΡ€Π΅ΠΆΠ΄Π΅Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊ Π½Π΅ΠΌΡƒ Bracketed-Ρ€Π΅ΠΆΠΈΠΌΠ°. Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΡŽΡ‚ escape-ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠ΅Ρ€Π΅Π΄ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ своих собствСнных. НапримСр, Π² ΠΌΠΎΠΈΡ… я Ρ‚Π°ΠΊ ΠΈ Π½Π΅ смог ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ тСсты Konsole Π΄Π°ΠΆΠ΅ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ .inputrc Ρ„Π°ΠΉΠ»Π°. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ поврСТдСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ систСмы ΠΈΠ·-Π·Π° Π½Π΅ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ прилоТСния ΠΈΠ»ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ настроСнной ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ. ОсобСнно опасно это ΠΏΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Π΅ сСрвСра, Π³Π΄Π΅ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΡ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ встрСчаСтся Ρ€Π΅ΠΆΠ΅, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ссли Ρ‚Π°ΠΊΠΈΡ… ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹Ρ… машин Ρƒ вас ΠΌΠ½ΠΎΠ³ΠΎ.

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ являСтся ΠΏΠ»Π°Π³ΠΈΠ½ подтвСрТдСния вставки для Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° urxvt, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ просто Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° вставку любого тСкста, содСрТащСго Π² сСбС Π½ΠΎΠ²Ρ‹Π΅ строки. Π‘ΠΎΠ»Π΅Π΅ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° для описываСмой Π₯ΠΎΡ€Π½ΠΎΠΌ тСкстовой Π°Ρ‚Π°ΠΊΠΈ я Π½Π΅ нашСл.

Π’ΠΊΠ»Π°Π΄ΠΊΠΈ ΠΈ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΠΉ сСйчас Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ являСтся ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° интСрфСйса с Π²ΠΊΠ»Π°Π΄ΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠ΄Π½ΠΎ ΠΎΠΊΠ½ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°, содСрТащСС Π² сСбС Π΅Ρ‰Π΅ нСсколько Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ². Для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² эта функция отличаСтся, ΠΈ хотя Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π²ΠΈΠ΄Π° xterm Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Π±ΠΎΠ»Π΅Π΅ соврСмСнныС ΠΈΠ½ΠΊΠ°Ρ€Π½Π°Ρ†ΠΈΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° Π² Π»ΠΈΡ†Π΅ Xfce Terminal, GNOME Terminal ΠΈ Konsole эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΈΠΌΠ΅ΡŽΡ‚. Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π²ΠΊΠ»Π°Π΄ΠΎΠΊ Π΅ΡΡ‚ΡŒ ΠΈ Ρƒ Urxvt, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ условии использования ΠΏΠ»Π°Π³ΠΈΠ½Π°. Но с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Π²ΠΊΠ»Π°Π΄ΠΎΠΊ ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΎΠ²Ρ‹Ρ… бСзусловным Π»ΠΈΠ΄Π΅Ρ€ΠΎΠΌ являСтся Terminator: ΠΎΠ½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ порядкС (см ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½ΠΈΠΆΠ΅).

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ Terminator являСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Β«Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΒ» эти Π²ΠΊΠ»Π°Π΄ΠΊΠΈ вмСстС ΠΈ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ наТатия клавиш Π½Π° нСсколько Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, Ρ‡Ρ‚ΠΎ обСспСчиваСт Π³Ρ€ΡƒΠ±Ρ‹ΠΉ инструмСнт выполнСния массовых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сСрвСрах ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ. Аналогичная функция Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΈ Π² Konsole. Для использования этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°Ρ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ стороннСС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ Cluster SSH, xlax ΠΈΠ»ΠΈ tmux.

ОсобСнно Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π²ΠΊΡƒΠΏΠ΅ с профилями: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρƒ вас ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½Π° Π²ΠΊΠ»Π°Π΄ΠΊΠ° для элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹, другая для Ρ‡Π°Ρ‚Π° ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. Π­Ρ‚ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ поддСрТиваСтся Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ Konsole ΠΈ GNOME Terminal. Оба ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ автоматичСски Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ свой ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒ. Terminator Ρ‚ΠΎΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈ, Π½ΠΎ я Π½Π΅ смог Π½Π°ΠΉΡ‚ΠΈ способ автоматичСски Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ понятия Β«ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŒΒ».

Π ΡŽΡˆΠ΅Ρ‡ΠΊΠΈ

ПослСднСС, Ρ‡Ρ‚ΠΎ я Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€ΡŽ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ части этой ΡΡ‚Π°Ρ‚ΡŒΠΈ, β€” внСшний Π²ΠΈΠ΄ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ². НапримСр GNOME, Xfce ΠΈ urxvt ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΡΡ‚ΡŒ, Π½ΠΎ Π½Π΅Π΄Π°Π²Π½ΠΎ свСрнули ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎ заставило Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» Tilix. Π›ΠΈΡ‡Π½ΠΎ мСня устраиваСт ΠΈ просто Xresources, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСт Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Ρ†Π²Π΅Ρ‚ΠΎΠ² Ρ„ΠΎΠ½Π° для urxvt. Однако нСстандартныС Ρ†Π²Π΅Ρ‚ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. НапримСр, Solarized Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ с прилоТСниями htop ΠΈ IPTraf, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡƒΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ собствСнныС Ρ†Π²Π΅Ρ‚Π°.

ΠžΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» VT100 Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π» Ρ†Π²Π΅Ρ‚Π°, Π° Π½ΠΎΠ²Ρ‹Π΅ Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π»ΠΈΡΡŒ 256-Ρ†Π²Π΅Ρ‚Π½ΠΎΠΉ ΠΏΠ°Π»ΠΈΡ‚Ρ€ΠΎΠΉ. Для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΡ‚ΠΈΠ»ΠΈΠ·ΡƒΡŽΡ‚ свои Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹, запросы ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΈΠ»ΠΈ строки состояния ΠΊΠ°ΠΊΠΈΠΌΠΈ-Ρ‚ΠΎ слоТными способами, ΠΌΠΎΠ³ΡƒΡ‚ ΡΡ‚Π°Ρ‚ΡŒ нСприятным ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ. Gist отслСТиваСт, ΠΊΠ°ΠΊΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Β«True ColorΒ». Мои тСсты ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ st, Alacritty ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π½Π° Π±Π°Π·Π΅ VTE прСкрасно ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ True Color. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π² этом ΠΏΠ»Π°Π½Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΡƒΡŽΡ‚ сСбя Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ ΠΈ ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ Π½Π΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ Π΄Π°ΠΆΠ΅ 256 Ρ†Π²Π΅Ρ‚ΠΎΠ². НиТС Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ True Color Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°Ρ… GNOME, st ΠΈ xterm, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎ ΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ с этой Π·Π°Π΄Π°Ρ‡Π΅ΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ своСй 256-Ρ†Π²Π΅Ρ‚ΠΎΠ²ΠΎΠΉ ΠΏΠ°Π»ΠΈΡ‚Ρ€Ρ‹, ΠΈ urxvt, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ тСст, Π½ΠΎ Π΄Π°ΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ ΠΌΠΈΠ³Π°ΡŽΡ‰ΠΈΠ΅ символы вмСсто Π½ΠΈΡ….

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

НСкоторыС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ тСкст Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ URL-шаблонов, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ссылки ΠΊΠ»ΠΈΠΊΠ°Π±Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ. Π­Ρ‚ΠΎ относится ΠΊΠΎ всСм ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌ ΠΎΡ‚ VTE Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°ΠΌ, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ urxvt Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ трансформировал URL-адрСса ΠΏΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΡƒ ΠΈΠ»ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сочСтания клавиш. Π”Ρ€ΡƒΠ³ΠΈΠ΅ протСстированныС ΠΌΠ½ΠΎΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ URL-адрСса ΠΈΠ½Ρ‹ΠΌΠΈ способами.

НаконСц, Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚Ρ€Π΅Π½Π΄ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² β€” ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±ΡƒΡ„Π΅Ρ€Π° ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ. НапримСр, Π² st Π½Π΅Ρ‚ Π±ΡƒΡ„Π΅Ρ€Π° ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ; прСдполагаСтся, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΠΏΠ»Π΅ΠΊΡΠΎΡ€, Π²Ρ€ΠΎΠ΄Π΅ tmux ΠΈ GNU Screen.

Π’ Alacritty Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π±ΡƒΡ„Π΅Ρ€Ρ‹ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ скролла, Π½ΠΎ вскорС добавится Π΅Π³ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΈΠ·-Π·Π° Β«ΠΎΠ±ΡˆΠΈΡ€Π½ΠΎΠ³ΠΎ Ρ„ΠΈΠ΄Π±Π΅ΠΊΠ°Β» Π½Π° эту Ρ‚Π΅ΠΌΡƒ со стороны ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Помимо этих выскочСк, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΉ мною Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я смог Π½Π°ΠΉΡ‚ΠΈ, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΡƒ.

ΠŸΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΈΡ‚ΠΎΠ³ΠΈ

Π’ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ части ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° (Π² ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π΅ это Π±Ρ‹Π»ΠΈ Π΄Π²Π΅ Ρ€Π°Π·Π½Ρ‹Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ, β€” ΠΏΡ€ΠΈΠΌ. ΠΏΠ΅Ρ€.) ΠΌΡ‹ сравним ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, использованиС памяти ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ. Но ΠΌΡ‹ ΡƒΠΆΠ΅ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· рассматриваСмых Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ нСдостатки. НапримСр, ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π½Π° рСгулярной основС Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с RTL-скриптами ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° mlterm ΠΈ pterm, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Π»ΡƒΡ‡ΡˆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌΠΈ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ. Konsole Ρ‚Π°ΠΊΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ проявил сСбя. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с RTL-скриптами, ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠ΅.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния защищСнности ΠΎΡ‚ вставки врСдоносного ΠΊΠΎΠ΄Π° urxvt стоит особняком ΠΈΠ·-Π·Π° своСй особой Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ этого Π²ΠΈΠ΄Π° Π°Ρ‚Π°ΠΊ, которая ΠΌΠ½Π΅ каТСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ. Π’Π΅ΠΌ, ΠΊΡ‚ΠΎ ΠΈΡ‰Π΅Ρ‚ ΠΊΠ°ΠΊΠΈΠ΅-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π½Π°Π²ΠΎΡ€ΠΎΡ‚Ρ‹, стоит ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π½Π° Konsole. НаконСц, стоит ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ VTE β€” отличная Π±Π°Π·Π° для Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ², которая Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Ρ†Π²Π΅Ρ‚ΠΎΠ², распознаваниС URL ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. На ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд, Π΄Π΅Ρ„ΠΎΠ»Ρ‚Π½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», поставляСмый с вашСй любимой срСдой, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‡Π°Ρ‚ΡŒ всСм трСбованиям, Π½ΠΎ оставим этот вопрос ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌ, ΠΏΠΎΠΊΠ° Π½Π΅ разбСрСмся с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€


Π’ΠΎΠΎΠ±Ρ‰Π΅, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² сама ΠΏΠΎ сСбС ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π½Π°Π΄ΡƒΠΌΠ°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΊΠ°ΠΊ оказалось, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ для ПО Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Π’Π°ΠΊΠΆΠ΅ Π΄Π°Π»Π΅Π΅ ΠΌΡ‹ рассмотрим Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Β«ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽΒ» (Π½Π° самом Π΄Π΅Π»Π΅, это ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ) ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ памяти (с оглядкой Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ сСгодня это Π½Π΅ Ρ‚Π°ΠΊ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½ΠΎ, ΠΊΠ°ΠΊ дСсятилСтия Π½Π°Π·Π°Π΄).

Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ°

ПослС Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ исслСдования ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² я ΠΏΡ€ΠΈΡˆΠ΅Π» ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ ваТнСйшим ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π² этом ΠΏΠ»Π°Π½Π΅ являСтся Ρ€Π°Π·ΠΌΠ΅Ρ€ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (ΠΏΠΈΠ½Π³). Π’ своСй ΡΡ‚Π°Ρ‚ΡŒΠ΅ Β«ΠŸΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ с ΡƒΠ΄ΠΎΠ²ΠΎΠ»ΡŒΡΡ‚Π²ΠΈΠ΅ΠΌΒ» ПавСл Π€Π°Ρ‚ΠΈΠ½ рассмотрСл Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… тСкстовых Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² ΠΈ Π½Π°ΠΌΠ΅ΠΊΠ½ΡƒΠ», Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π² этом ΠΏΠ»Π°Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Ρ‡Π΅ΠΌ самыС быстрыС тСкстовыС Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹. ИмСнно этот Π½Π°ΠΌΠ΅ΠΊ ΠΈ ΠΏΡ€ΠΈΠ²Π΅Π» мСня, Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅, ΠΊ запуску собствСнных тСстов ΠΈ написанию этой ΡΡ‚Π°Ρ‚ΡŒΠΈ.

Но Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°, ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΎΠ½Π° Ρ‚Π°ΠΊ Π²Π°ΠΆΠ½Π°? Π’ своСй ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π€Π°Ρ‚ΠΈΠ½ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ» Π΅Ρ‘ ΠΊΠ°ΠΊ Β«Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ клавиши ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ экрана» ΠΈ ΠΏΡ€ΠΎΡ†ΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Π» «Руководство ΠΏΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ° с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌΒ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ говорится: Β«Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи Π½Π° дисплСС ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π°ΠΆΠ½ΠΎΠ΅ влияниС Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠ°ΡˆΠΈΠ½ΠΈΡΡ‚ΠΊΠΈ ΠΈ Π΅Π΅ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½Π½ΠΎΡΡ‚ΡŒΒ».

Π€Π°Ρ‚ΠΈΠ½ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΈΠ½Π³ ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ Π³Π»ΡƒΠ±ΠΎΠΊΠΈΠ΅ послСдствия, Π½Π΅ΠΆΠ΅Π»ΠΈ просто ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈΠ΅: Β«ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π½ΠΈΠ΅ становится ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ большС ошибок, увСличиваСтся напряТСниС Π³Π»Π°Π· ΠΈ ΠΌΡ‹ΡˆΡ†Β». Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, большая Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ ΠΎΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠ°ΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ сниТСнию качСства ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠ³Π½ΠΈΡ‚ΠΈΠ²Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ Π½Π° ΠΌΠΎΠ·Π³. Но Ρ‡Ρ‚ΠΎ Π΅Ρ‰Π΅ Ρ…ΡƒΠΆΠ΅, ΠΏΠΈΠ½Π³ Β«ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ напряТСниС Π³Π»Π°Π· ΠΈ ΠΌΡ‹ΡˆΡ†Β», Ρ‡Ρ‚ΠΎ, ΠΏΠΎ-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡƒ, ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Ρ€Π°Π²ΠΌ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ (ΠΏΠΎ всСй видимости, Π°Π²Ρ‚ΠΎΡ€ ΠΈΠΌΠ΅Π΅Ρ‚ Π² Π²ΠΈΠ΄Ρƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΌΡ‹ΡˆΡ†Π°ΠΌΠΈ Π³Π»Π°Π·, спиной, Ρ€ΡƒΠΊΠ°ΠΌΠΈ ΠΈ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π·Ρ€Π΅Π½ΠΈΠ΅ΠΌ, β€” ΠΏΡ€ΠΈΠΌ. ΠΏΠ΅Ρ€.) ΠΈΠ·-Π·Π° ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡŽΡ‰Π΅Π³ΠΎΡΡ напряТСния.

НСкоторыС ΠΈΠ· этих эффСктов извСстны Π΄Π°Π²Π½ΠΎ, Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ исслСдования, ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Π΅Ρ‰Π΅ Π² 1976 Π³ΠΎΠ΄Ρƒ Π² ΠΆΡƒΡ€Π½Π°Π»Π΅ Ergonomics, говорят, Ρ‡Ρ‚ΠΎ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π² 100 миллисСкунд Β«Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡ…ΡƒΠ΄ΡˆΠ°Π΅Ρ‚ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Π½Π°Π±ΠΎΡ€Π°Β». БовсСм Π½Π΅Π΄Π°Π²Π½ΠΎ Π² руководствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ GNOME Π±Ρ‹Π»ΠΎ внСсСно ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎΠ΅ врСмя ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° Π² 10 миллисСкунд, Π° Ссли ΠΈΠ΄Ρ‚ΠΈ дальшС, Ρ‚ΠΎ Microsoft Research ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ΄Π΅Π°Π»ΠΎΠΌ являСтся 1 миллисСкунда.

Π€Π°Ρ‚ΠΈΠ½ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ» свои тСсты Π½Π° тСкстовых Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°Ρ…; ΠΎΠ½ создал ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ инструмСнт ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Typometer, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я использовал для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΈΠ½Π³Π° Π² эмуляторах Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°. Π˜ΠΌΠ΅ΠΉΡ‚Π΅ Π² Π²ΠΈΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ тСст проводился Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ симуляции: Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π½Π°ΠΌ Π½Π°Π΄ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π²Π²ΠΎΠ΄Π° (ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Π°, USB-ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅) ΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° (Π±ΡƒΡ„Π΅Ρ€ Π²ΠΈΠ΄Π΅ΠΎΠΊΠ°Ρ€Ρ‚Ρ‹, ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€). По словам Π€Π°Ρ‚ΠΈΠ½Π°, Π² Ρ‚ΠΈΠΏΠΈΡ‡Π½Ρ‹Ρ… конфигурациях ΠΎΠ½Π° составляСт ΠΎΠΊΠΎΠ»ΠΎ 20 ms. ΠŸΡ€ΠΈ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ гСймСрского оборудования ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ показатСля всСго Π² 3 миллисСкунды. Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ нас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ быстроС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Π½ΠΎΡΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΈ свою Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ. ЦСль Π€Π°Ρ‚ΠΈΠ½Π° —довСсти Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ прилоТСния Π΄ΠΎ 1 миллисСкунды, ΠΈΠ»ΠΈ вовсС Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ Π½Π°Π±ΠΎΡ€Π° Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΠΌΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, ΠΊΠ°ΠΊ Π² IntelliJ IDEA 15.

А Π²ΠΎΡ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΌΠΎΠΈΡ… ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π€Π°Ρ‚ΠΈΠ½Π° для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΉ экспСримСнт согласуСтся с Π΅Π³ΠΎ тСстами:

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ мСня ΠΏΠΎΡ€Π°Π·ΠΈΠ»ΠΎ β€” это Π»ΡƒΡ‡ΡˆΠ΅Π΅ врСмя ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° Ρƒ старых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ xterm ΠΈ mlterm. Π‘ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ Ρ…ΡƒΠ΄ΡˆΠ΅ΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ рСгистра (2,4 ms) ΠΎΠ½ΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ самый быстрый соврСмСнный Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» (10,6 ms для st). Ни ΠΎΠ΄ΠΈΠ½ соврСмСнный Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» Π½Π΅ опускаСтся Π½ΠΈΠΆΠ΅ ΠΏΠΎΡ€ΠΎΠ³Π° Π² 10 миллисСкунд. Π’ частности, Alacritty Π½Π΅ соотвСтствуСт трСбованиям ΠΊ «самому быстрому ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°Β», хотя Π΅Π³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΠ»ΠΈΡΡŒ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π² 2017 Π³ΠΎΠ΄Ρƒ. Π”Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² курсС ситуации ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π°Π΄ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΠ΅ΠΌ отобраТСния. Π’Π°ΠΊΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Vim, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ GTK3, Π½Π° порядок ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ своСго Π°Π½Π°Π»ΠΎΠ³Π° GTK2. Из этого ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ GTK3 создаСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ, ΠΈ это отраТаСтся Π½Π° всСх ΠΏΡ€ΠΎΡ‡ΠΈΡ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ (Terminator, Xfce4 Terminal ΠΈ GNOME Terminal).

Однако для Π³Π»Π°Π·Π° отличия ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹. Как ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ Π€Π°Ρ‚ΠΈΠ½: Β«Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π° ΠΈΠΌΠ΅Π»Π° Π½Π° вас эффСкт». Π€Π°Ρ‚ΠΈΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°Π΅Ρ‚ ΠΎ стандартном ΠΎΡ‚ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠΈ: Β«Π»ΡŽΠ±Ρ‹Π΅ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ Π² Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (Π΄Ρ€ΠΎΠΆΠ°Π½ΠΈΠ΅) ΡΠΎΠ·Π΄Π°ΡŽΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΈΠ·-Π·Π° ΠΈΡ… нСпрСдсказуСмости».

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π“Ρ€Π°Ρ„ΠΈΠΊ Π²Ρ‹ΡˆΠ΅ взят ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ Π½Π° чистом Debian 9 (stretch) с i3 window manager. Π­Ρ‚Π° срСда Π΄Π°Π΅Ρ‚ Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π² тСстах Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. Как оказалось, GNOME создаСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΈΠ½Π³ Π² 20 ms для всСх ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ΅ объяснСниС этому β€” Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ с синхронной ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… событий. Π€Π°Ρ‚ΠΈΠ½ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ для Ρ‚Π°ΠΊΠΎΠ³ΠΎ случая Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Workrave, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ добавляСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ обрабатывая всС input-события синхронно. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ GNOME Ρ‚Π°ΠΊΠΆΠ΅ оснащСн ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€ΠΎΠΌ ΠΎΠΊΠΎΠ½ Mutter, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ создаСт Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π±ΡƒΡ„Π΅Ρ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ влияСт Π½Π° ΠΏΠΈΠ½Π³ ΠΈ добавляСт ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 8 миллисСкунд Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ.

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ тСст β€” это традиционная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° «скорости» ΠΈΠ»ΠΈ «полосы пропускания», которая измСряСт, ΠΊΠ°ΠΊ быстро Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‡ΠΈΠ²Π°Ρ‚ΡŒ страницу, отобраТая большоС количСство тСкста Π½Π° экранС. ΠœΠ΅Ρ…Π°Π½ΠΈΠΊΠ° тСста Π²Π°Ρ€ΡŒΠΈΡ€ΡƒΠ΅Ρ‚ΡΡ; ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ тСст состоял Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ просто Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ строку с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ seq. Π”Ρ€ΡƒΠ³ΠΈΠ΅ тСсты Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Вомаса Π•. Π”ΠΈΠΊΠΈ (ΡΠΎΠΏΡ€ΠΎΠ²ΠΎΠΆΠ΄Π°ΡŽΡ‰Π΅Π³ΠΎ xterm), Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ выгруТаСтся Ρ„Π°ΠΉΠ» terminfo.src. Π’ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΌ ΠΎΠ±Π·ΠΎΡ€Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ² Π”Π΅Π½ Π›ΡƒΡƒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ строку случайных Π±Π°ΠΉΡ‚ΠΎΠ² Π² ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ΅ base32, которая выводится Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π» с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ cat. Π›ΡƒΡƒ считаСт Ρ‚Π°ΠΊΠΎΠΉ тСст Β«Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ бСсполСзным эталоном, насколько это ΠΌΠΎΠΆΠ½ΠΎ сСбС ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒΒ» ΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ вмСсто этого ΠΎΡ‚ΠΊΠ»ΠΈΠΊ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° Π² качСствС основного показатСля. Π”ΠΈΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ свой тСст вводящим Π² Π·Π°Π±Π»ΡƒΠΆΠ΄Π΅Π½ΠΈΠ΅. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΎΠ±Π° Π°Π²Ρ‚ΠΎΡ€Π° ΠΏΡ€ΠΈΠ·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ пропускная ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΎΠΊΠ½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. Π›ΡƒΡƒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ» зависаниС Emacs Eshell ΠΏΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Π”ΠΈΠΊΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π» Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ΅Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ xtrerm. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² этом тСстС всС Π΅Ρ‰Π΅ Π΅ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π·ΠΎΠ½, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ процСсс Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Π° сильно отличаСтся ΠΎΡ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΊ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρƒ, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ тСстовый ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ rxvt ΠΈ st Π²Ρ‹Ρ€Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π²ΠΏΠ΅Ρ€Π΅Π΄ Π½Π° Ρ„ΠΎΠ½Π΅ ΠΊΠΎΠ½ΠΊΡƒΡ€Π΅Π½Ρ‚ΠΎΠ², слСдом ΠΈΠ΄Π΅Ρ‚ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹ΠΉ Alacritty, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ с ΡƒΠΏΠΎΡ€ΠΎΠΌ Π½Π° быстродСйствиС. Π”Π°Π»Π΅Π΅ ΠΈΠ΄ΡƒΡ‚ Xfce (сСмСйство VTE) ΠΈ Konsole, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ ΠΏΠΎΡ‡Ρ‚ΠΈ Π²Π΄Π²ΠΎΠ΅ быстрСС. ПослСдним ΠΈΠ΄Π΅Ρ‚ xterm с ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ Π² ΠΏΡΡ‚ΡŒ Ρ€Π°Π· ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅ rxvt. Π’ΠΎ врСмя тСста xterm Ρ‚Π°ΠΊΠΆΠ΅ сильно рябил, проходящий тСкст Π±Ρ‹Π»ΠΎ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Ρ€Π°Π·Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ, Π΄Π°ΠΆΠ΅ Ссли это Π±Ρ‹Π»Π° ΠΎΠ΄Π½Π° ΠΈ Ρ‚Π° ΠΆΠ΅ строка. Konsole оказался быстрым, Π½ΠΎ ΠΎΠ½ Π²Ρ€Π΅ΠΌΠ΅Π½Π°ΠΌΠΈ Β«Ρ…ΠΈΡ‚Ρ€ΠΈΠ»Β»: дисплСй врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ зависал, показывая тСкст частично ΠΈΠ»ΠΈ Π½Π΅ отобраТая Π΅Π³ΠΎ вовсС. Π”Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π»ΠΈ строки Ρ‡Π΅Ρ‚ΠΊΠΎ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ st, Alacritty ΠΈ rxvt.

Π”ΠΈΠΊΠΈ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ различия Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ связаны с Π΄ΠΈΠ·Π°ΠΉΠ½ΠΎΠΌ Π±ΡƒΡ„Π΅Ρ€ΠΎΠ² ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ Π² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°Ρ…. Π’ частности, ΠΎΠ½ обвиняСт rxvt ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Β«Π½Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ ΠΎΠ±Ρ‰ΠΈΠΌ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌΒ»:

Β«Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ xterm, rxvt Π½Π΅ пытался ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ всС обновлСния. Если ΠΎΠ½ отстаСт, ΠΎΠ½ откаТСтся ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Π²Π΅Ρ€ΡΡ‚Π°Ρ‚ΡŒ ΡƒΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ΅. Π­Ρ‚ΠΎ ΠΎΠΊΠ°Π·Π°Π»ΠΎ большСС влияниС Π½Π° ΠΌΠ½ΠΈΠΌΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ, Ρ‡Π΅ΠΌ Π½Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΡŽ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ памяти. Один нСдостаток состоял Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ анимация ASCII Π±Ρ‹Π»Π° нСсколько Π½Π΅Ρ‚ΠΎΡ‡Π½ΠΎΠΉΒ».

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ эту ΠΊΠ°ΠΆΡƒΡ‰ΡƒΡŽΡΡ ΠΌΠ΅Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ xterm, Π”ΠΈΠΊΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ рСсурс fastScroll, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ xterm ΠΎΡ‚Π±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ обновлСния экрана, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΎΡ‚ΡΡ‚Π°Π²Π°Ρ‚ΡŒ ΠΎΡ‚ ΠΏΠΎΡ‚ΠΎΠΊΠ°. Мои тСсты ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ fastScroll ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ xterm Π½Π° ΠΎΠ΄ΠΈΠ½ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ с rxvt. Π­Ρ‚ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ, довольно Π³Ρ€ΡƒΠ±Ρ‹ΠΉ ΠΊΠΎΡΡ‚Ρ‹Π»ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ сам Π”ΠΈΠΊΠΈ: Β«ΠΈΠ½ΠΎΠ³Π΄Π° xterm β€” ΠΊΠ°ΠΊ ΠΈ konsole β€” каТСтся, останавливаСтся, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π½Π°Π±ΠΎΡ€Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ экрана послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… Π±Ρ‹Π»ΠΈ ΡƒΠ΄Π°Π»Π΅Π½Ρ‹Β». Π’ этом ΠΊΠ»ΡŽΡ‡Π΅ каТСтся, Ρ‡Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ нашли Π½Π°ΠΈΠ»ΡƒΡ‡ΡˆΠΈΠΉ компромисс ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ ΠΈ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒΡŽ дисплСя.

ΠŸΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ рСсурсов

НСзависимо ΠΎΡ‚ цСлСсообразности рассмотрСния скорости ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠΈ Π² качСствС показатСля ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, этот тСст позволяСт ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹, Ρ‡Ρ‚ΠΎ, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, позволяСт Π½Π°ΠΌ ΠΈΠ·ΠΌΠ΅Ρ€ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ использованиС памяти ΠΈΠ»ΠΈ диска. ΠœΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Ρ‹ ΠΏΡƒΡ‚Π΅ΠΌ запуска ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ тСста seq ΠΏΠΎΠ΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠΌ процСсса Python. Он собирал Π΄Π°Π½Π½Ρ‹Π΅ счСтчиков getrusage () для ru_maxrss, сумму ru_oublock ΠΈ ru_inblock ΠΈ простой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π’ этом тСстС ST Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ мСсто с наимСньшим срСдним потрСбляСмым объСмом памяти Π² 8 ΠœΠ‘, Ρ‡Ρ‚ΠΎ Π½Π΅ΡƒΠ΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ссли ΡƒΡ‡Π΅ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ основная идСя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° β€” это простота. НСмного большС потрСбляСт mlterm, xterm ΠΈ rxvt β€” ΠΎΠΊΠΎΠ»ΠΎ 12 ΠœΠ‘. Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Ρƒ Alacritty, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ трСбуСтся 30 ΠœΠ‘. Π—Π°Ρ‚Π΅ΠΌ ΠΈΠ΄ΡƒΡ‚ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ сСмСйства VTE с показатСлями ΠΎΡ‚ 40 Π΄ΠΎ 60 ΠœΠ‘, Ρ‡Ρ‚ΠΎ достаточно ΠΌΠ½ΠΎΠ³ΠΎ. ПодобноС ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ эти Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π±ΠΎΠ»Π΅Π΅ высокого уровня, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, GTK. Konsole ΠΈΠ΄Π΅Ρ‚ послСдним с ΠΊΠΎΠ»ΠΎΡΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ΠΌ 65 ΠœΠ‘ памяти Π²ΠΎ врСмя тСстов, хотя ΠΈ это ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π°Π²Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ вСсьма ΡˆΠΈΡ€ΠΎΠΊΠΈΠΌ Π½Π°Π±ΠΎΡ€ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

По ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π΄Π΅ΡΡΡ‚ΡŒ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, всС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ стали ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ большС памяти. РаньшС Xterm Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π» 4 ΠœΠ‘, Π° Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ β€” 15 ΠœΠ‘ просто Π½Π° запускС. АналогичноС ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ потрСблСния Π΅ΡΡ‚ΡŒ ΠΈ Ρƒ rxvt, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ 16 ΠœΠ‘. Π’Π΅Ρ€ΠΌΠΈΠ½Π°Π» Xfce Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ 34 ΠœΠ‘, Ρ‡Ρ‚ΠΎ Π² Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π° большС, Ρ‡Π΅ΠΌ Ρ€Π°Π½ΡŒΡˆΠ΅, Π° Π²ΠΎΡ‚ GNOME Terminal Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ всСго 20 ΠœΠ‘. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, всС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ тСсты ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π½Π° 32-Π±ΠΈΡ‚Π½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π΅. На LCA 2012 Расти РассСл рассказал, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ мноТСство Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ½ΠΊΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ рост потрСблСния памяти. ΠŸΡ€ΠΈ всСм этом сСйчас ΠΌΡ‹ ΠΆΠΈΠ²Π΅ΠΌ Π²ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π°, ΠΊΠΎΠ³Π΄Π° Ρƒ нас Π΅ΡΡ‚ΡŒ Ρ†Π΅Π»Ρ‹Π΅ Π³ΠΈΠ³Π°Π±Π°ΠΉΡ‚Ρ‹ памяти, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ справимся.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, я Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ощущСния, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ большСго количСства памяти Π½Π° Ρ‚Π°ΠΊΠΎΠ΅ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ПО, ΠΊΠ°ΠΊ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», β€” это пустая Ρ‚Ρ€Π°Ρ‚Π° рСсурсов. Π­Ρ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ наимСньшими ΠΈΠ· самых ΠΌΠ°Π»Π΅Π½ΡŒΠΊΠΈΡ…, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ способны Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° любой Β«ΠΊΠΎΡ€ΠΎΠ±ΠΊΠ΅Β», Π΄Π°ΠΆΠ΅ ΠΎΠ±ΡƒΠ²Π½ΠΎΠΉ, Ссли ΠΌΡ‹ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΏΡ€ΠΈΠ΄Π΅ΠΌ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΈΡ… Π½Π°Π΄ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΠ½Π°Ρ‰Π°Ρ‚ΡŒ Linux-систСмами (Π° Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊ ΠΎΠ½ΠΎ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚). Но с этими Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ использованиС памяти станСт Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ Π² любой срСдС ΠΏΡ€ΠΈ запускС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ², ΠΊΡ€ΠΎΠΌΠ΅ ситуации с нСсколькими самыми Π»Π΅Π³ΠΊΠΈΠΌΠΈ ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ Π² возмоТностях. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠΏΠ΅Π½ΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ это, GNOME Terminal, Konsole, urxvt, Terminator ΠΈ Xfce Terminal ΠΈΠΌΠ΅ΡŽΡ‚ Daemon-Ρ€Π΅ΠΆΠΈΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ нСсколькими Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ΄ΠΈΠ½ процСсс, Ρ‡Ρ‚ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΈΡ… ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ памяти.

ΠžΠ±Π·ΠΎΡ€ эмуляторов Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°

Π’ Ρ…ΠΎΠ΄Π΅ своих тСстов я ΠΏΡ€ΠΈΡˆΠ΅Π» ΠΊ Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠΌΡƒ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠΌΡƒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ ΠΊΠ°ΡΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ дискового чтСния-записи: я ΠΎΠΆΠΈΠ΄Π°Π» Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΠΈΡ‡Π΅Π³ΠΎ Ρ‚ΡƒΡ‚ Π½Π΅ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Π½ΠΎ оказалось, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ самыС ΠΎΠ±ΡŠΠ΅ΠΌΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° диск. Π’Π°ΠΊ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° VTE фактичСски Π΄Π΅Ρ€ΠΆΠΈΡ‚ Π½Π° дискС Π±ΡƒΡ„Π΅Ρ€ скролла (эта ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π±Ρ‹Π»Π° Π·Π°ΠΌΠ΅Ρ‡Π΅Π½Π° Π΅Ρ‰Π΅ Π² 2010 Π³ΠΎΠ΄Ρƒ, ΠΈ это происходит Π΄ΠΎ сих ΠΏΠΎΡ€). Но Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ старых рСализация, сСйчас, ΠΏΠΎ ΠΊΡ€Π°ΠΉΠ½Π΅ ΠΌΠ΅Ρ€Π΅, эти Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ AES256 GCM (с вСрсии 0.39.2). Но Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ Ρ€Π΅Π·ΠΎΠ½Π½Ρ‹ΠΉ вопрос, Ρ‡Ρ‚ΠΎ ΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ особСнного Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ VTE, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊΠΎΠ³ΠΎ нСстандартного ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΊ рСализации…

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ части ΡΡ‚Π°Ρ‚ΡŒΠΈ ΠΌΡ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ Π½Π° основС VTE ΠΈΠΌΠ΅ΡŽΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ это связано с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π·Π°Ρ‚Ρ€Π°Ρ‚Π°ΠΌΠΈ Π½Π° обСспСчСниС ΠΈΡ… ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. БСйчас ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ являСтся ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ всСми VTE-Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· Daemon-процСсс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΈΡ… Π°ΠΏΠΏΠ΅Ρ‚ΠΈΡ‚. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, старыС систСмы, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ физичСскиС ограничСния ΠΏΠΎ количСству ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти ΠΈ Π±ΡƒΡ„Π΅Ρ€Π° ядра, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ Π½ΡƒΠΆΠ΄Π°Ρ‚ΡŒΡΡ Π² Π±ΠΎΠ»Π΅Π΅ Ρ€Π°Π½Π½ΠΈΡ… вСрсиях Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠ², Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшС рСсурсов. Π₯отя Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Ρ‹ VTE ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ сСбя Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π² тСстах Π½Π° ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ½ΡƒΡŽ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ (ΠΏΡ€ΠΎΠΊΡ€ΡƒΡ‚ΠΊΠ°), ΠΈΡ… Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° отобраТСния Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° дисплСС Π²Ρ‹ΡˆΠ΅ установлСнного ΠΏΠΎΡ€ΠΎΠ³Π° Π² руководствС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ GNOME. ВСроятно, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ VTE стоит это ΡƒΡ‡Π΅ΡΡ‚ΡŒ. Если ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π² расчСт Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Linux встрСча с Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΠΎΠΌ Π½Π΅ΠΈΠ·Π±Π΅ΠΆΠ½Π°, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅ Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½Ρ‹ΠΌ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΡŽΠ·Π΅Ρ€Ρƒ. Для ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Π³ΠΈΠΊΠΎΠ² ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ с Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ Π΄Π°ΠΆΠ΅ сниТСниС Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π½Π° Π·Ρ€Π΅Π½ΠΈΠ΅ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ‚Ρ€Π°Π²ΠΌ ΠΈ Π·Π°Π±ΠΎΠ»Π΅Π²Π°Π½ΠΈΠΉ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΈΠ·-Π·Π° ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… сСссий. К соТалСнию, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ старыС xterm ΠΈ mlterm подводят нас ΠΊ Π²ΠΎΠ»ΡˆΠ΅Π±Π½ΠΎΠΌΡƒ ΠΏΠΎΡ€ΠΎΠ³Ρƒ ΠΏΠΈΠ½Π³Π° Π² 10 миллисСкунд, Ρ‡Ρ‚ΠΎ для ΠΌΠ½ΠΎΠ³ΠΈΡ… Π½Π΅ΠΏΡ€ΠΈΠ΅ΠΌΠ»Π΅ΠΌΠΎ.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ измСрСния Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΈΠ·-Π·Π° развития графичСских срСд Linux Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΠΏΠΎΠΉΡ‚ΠΈ Π½Π° ряд компромиссов. НСкоторым ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ стоит Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΎΠΊΠΎΠ½Π½Ρ‹Π΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ сниТСниС ΠΏΠΈΠ½Π³Π°. К соТалСнию, для Wayland ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ: ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Typometer, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ я пользовался, Π±Ρ‹Π»Π° создана для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Wayland ΠΏΡ€ΠΈΠ·Π²Π°Π½ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ β€” шпионаТ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΎΠΊΠ½Π°ΠΌΠΈ. Π― надСюсь, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ‚ΠΈΠ½Π³ Wayland ΠΏΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π»ΡƒΡ‡ΡˆΠ΅, Ρ‡Π΅ΠΌ X.org, Π° Ρ‚Π°ΠΊΠΆΠ΅ надСюсь ΠΈ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ ΠΊΡ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π½Π°ΠΉΠ΄Π΅Ρ‚ способ ΠΎΡ†Π΅Π½ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² этой срСдС.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com