Size: a a a

Rust — русскоговорящее сообществo

2020 March 31

OA

Oleg Andreev in Rust — русскоговорящее сообществo
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
по идее это должно быть валидно. &self уже валидный указатель, его нужно скопировать в первое поле структурки, а во второе - единичку вложить. Но не могу найти какой-нить АПИ типа slice::from_raw_parts
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
блин🤦. Нашел.
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
источник

BD

Berkus Decker in Rust — русскоговорящее сообществo
Oleg Andreev
блин🤦. Нашел.
а я только закончил на плейграунде пример набрасывать )
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
Berkus Decker
а я только закончил на плейграунде пример набрасывать )
sorry!
источник

BD

Berkus Decker in Rust — русскоговорящее сообществo
да ничего страшного
источник

G

Gymmasssorla in Rust — русскоговорящее сообществo
источник

H

Hadji in Rust — русскоговорящее сообществo
Berkus Decker
а я только закончил на плейграунде пример набрасывать )
Вбрось - не пропадать же примеру)
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
а какой самый простой (минимум настроек) способ задебажить название кейса в енуме, без всего барахла внутри?
источник

OA

Oleg Andreev in Rust — русскоговорящее сообществo
типа чтоб dbg!(message) вывело одну строчку Message::Something, а не полэкрана со всеми данными внутри него
источник

c

capgelka in Rust — русскоговорящее сообществo
Немного необычный вопрос, но от его решения зависит удасться ли мне использовать Rust в проекте) Надеюсь, тут подходящее место, чтобы спросить.

   Есть библиотека tui-rs. И есть windows7 c openssh сервером. И надо, чтобы работало при подключении к нему, в идеале с crossterm бэкендом (это конечно не единственная целевая платформа, но увы надо и в такой кейс уметь). Над виндой при этом можно извратиться как угодно, лишь бы в итоге работало. То есть в частности вместо cmd.exe или powershell можно что-то другое использовать.
   Попробовал clink и mingw bash от гита, в обоих не работает.

   Если просто windows7 без извращения с openssh, то можно взять cmderr и там все прекрасно работает, но ssh такое не катит.

   Проблема в том, что никак не обрабатываются escape последовательности для цветов и вместо отрисовываемого UI лезет простынка из чего-то такого:

   

   37;23H5←[37;27H←[38;5;2m←[49m█←[38;5;0m←[48;5;2m9←[38;4H←[38;5;3m←
   [49m0←[38;9H1←[38;14H2←[38;19H3←[38;23H24←[38;28H1←[38;39H←[39m5←[38
   

Собственно подобное проявляется и при просто запуске cargo, когда не подсвечивает зеленым/красным.

   Может как-то можно заставить обрабатывать все это мой родной linux терминал с которого подключаюсь, или все-таки подменить виндовый шелл чем-то умеющим в цвета?
источник

V

Vladimir in Rust — русскоговорящее сообществo
Ты говоришь mingw баш пробовал, а терминал  встроенный в msys не пробовал?
источник

V

Vladimir in Rust — русскоговорящее сообществo
и я не понял почему cmderr и ssh не катят?
источник

V

Vladimir in Rust — русскоговорящее сообществo
В общем если не хочется по каким-та причинам юзать эмулятор терминала из msys
проверял ли ты это https://stackoverflow.com/a/51681675 @capgelka ?
источник

BD

Berkus Decker in Rust — русскоговорящее сообществo
Hadji
Вбрось - не пропадать же примеру)
источник

BD

Berkus Decker in Rust — русскоговорящее сообществo
capgelka
Немного необычный вопрос, но от его решения зависит удасться ли мне использовать Rust в проекте) Надеюсь, тут подходящее место, чтобы спросить.

   Есть библиотека tui-rs. И есть windows7 c openssh сервером. И надо, чтобы работало при подключении к нему, в идеале с crossterm бэкендом (это конечно не единственная целевая платформа, но увы надо и в такой кейс уметь). Над виндой при этом можно извратиться как угодно, лишь бы в итоге работало. То есть в частности вместо cmd.exe или powershell можно что-то другое использовать.
   Попробовал clink и mingw bash от гита, в обоих не работает.

   Если просто windows7 без извращения с openssh, то можно взять cmderr и там все прекрасно работает, но ssh такое не катит.

   Проблема в том, что никак не обрабатываются escape последовательности для цветов и вместо отрисовываемого UI лезет простынка из чего-то такого:

   

   37;23H5←[37;27H←[38;5;2m←[49m█←[38;5;0m←[48;5;2m9←[38;4H←[38;5;3m←
   [49m0←[38;9H1←[38;14H2←[38;19H3←[38;23H24←[38;28H1←[38;39H←[39m5←[38
   

Собственно подобное проявляется и при просто запуске cargo, когда не подсвечивает зеленым/красным.

   Может как-то можно заставить обрабатывать все это мой родной linux терминал с которого подключаюсь, или все-таки подменить виндовый шелл чем-то умеющим в цвета?
это VT102 цветовые коды, так что их ЛЮБОЙ терминал с поддержкой осилит
источник

c

capgelka in Rust — русскоговорящее сообществo
Vladimir
и я не понял почему cmderr и ssh не катят?
Потому что я не очень понимаю как его запустить по ssh. Это же гуевое приложение, а не просто альтернативный шелл.

По ссылке вроде для windows10, но спасибо попробую, может оно и в 7ке работает.

Частично сейчас помог https://github.com/adoxa/ansicon, цвета заработали, но вместо анимации "на месте" картинка под картинкой
источник

V

Vladimir in Rust — русскоговорящее сообществo
capgelka
Потому что я не очень понимаю как его запустить по ssh. Это же гуевое приложение, а не просто альтернативный шелл.

По ссылке вроде для windows10, но спасибо попробую, может оно и в 7ке работает.

Частично сейчас помог https://github.com/adoxa/ansicon, цвета заработали, но вместо анимации "на месте" картинка под картинкой
Его надо не на сервере запускать, а на винде.
У тебя на винде должно быть что-то что поддерживает эскейп последовательности, это может быть:
- терминал из msys или его аналогов (cygwin и тд), причем вроде 3 варианта имеет
- сконфигуренный правильно повершел (ссылка выше).
- запущенный линуксовый терминал под wsl, с виндовым x сервером (для полных извращенцев)
- По идее даже putty должен работать.


Это гуи приложение которое будет рисовать тебе текст, далее в нем запускается программа котороая будет собственно предоставлять терминалу текст. Это может быть ssh, если настоящее приложение находится удаленно.

Самый простой вариант наверное будет putty, он портативный и доступен еще со времен xp, в нем полноценная поддержка escape последовательностей или врублена по дефолту, или настраивается в пару кликов мыши.
источник

c

capgelka in Rust — русскоговорящее сообществo
Vladimir
Его надо не на сервере запускать, а на винде.
У тебя на винде должно быть что-то что поддерживает эскейп последовательности, это может быть:
- терминал из msys или его аналогов (cygwin и тд), причем вроде 3 варианта имеет
- сконфигуренный правильно повершел (ссылка выше).
- запущенный линуксовый терминал под wsl, с виндовым x сервером (для полных извращенцев)
- По идее даже putty должен работать.


Это гуи приложение которое будет рисовать тебе текст, далее в нем запускается программа котороая будет собственно предоставлять терминалу текст. Это может быть ssh, если настоящее приложение находится удаленно.

Самый простой вариант наверное будет putty, он портативный и доступен еще со времен xp, в нем полноценная поддержка escape последовательностей или врублена по дефолту, или настраивается в пару кликов мыши.
Видимо мой кейс слишком извращенный, что возникло недопонимание.

Openssh сервер на винде + rust приложение на винде. И заказчик будет откуда-то, вероятно с линукса, может с путти конектиться к серваку по openssh и запускать (я сам не знаю зачем такое).

Но вопрос более не актуален (разве что как праздный), удалось прийти к тому чтобы использовать VNC вместо openssh. Всем спасибо за советы!
источник