LINUX.ORG.RU
ФорумTalks

nushell - новый шелл на Rust!

 ,


1

4

На Hacker News вовсю обсуждают новый инновационный шелл на Rust https://news.ycombinator.com/item?id=20783006

Ссылка на собственно анонс http://www.jonathanturner.org/2019/08/introducing-nushell.html

Хотя на лоре вроде бы как высокая концентрация Rust-программистов, новость почему-то еще не запилили.

Автор пишет, что вдохновлялся идеями PowerShell. Но в такой, вольной интерпретации. Насколько я понял, вместо «объектов» в пайпах передается текст, отформатированный в таблицу. В каментах вспомнили про xonsh, хотя можно было бы добавить и https://github.com/osquery/osquery и еще много разного похожего.

Как думаете, bash и остальные (дырявые, глючные и неудобные) шеллы на С всё? Можно уже закапывать?

★★

по традиции

ненужно - новый шелл на ненужно!

FTFY

Как думаете, bash и остальные (дырявые, глючные и неудобные) шеллы на С всё? Можно уже закапывать?

дырявые, глючные и неудобные

пруф? может это ты не осилил?

eternal_sorrow ★★★★★ ()
Последнее исправление: eternal_sorrow (всего исправлений: 1)

Как думаете, bash и остальные (дырявые, глючные и неудобные) шеллы на С всё? Можно уже закапывать?

Не в обиду Rust-кодерам, но когда переписанное ими заменяло оригинал?

a1batross ★★★★★ ()

Если он парсит в структуры вывод кучи реальных команд, то приколько. А если тупо свой ls, то игрушка

spoonbob ()

Да, вот чего нам не хватало. Теперь заживем!

bread ()

передается текст, отформатированный в таблицу

Эталонное ненужно. Идея чувака протухла 50 лет назад.

no-such-file ★★★★★ ()
Ответ на: комментарий от spoonbob

В анонсе есть пример

^ls -la | lines | skip 1 | split-column " " perms files group user size month

^ls -la - вызывается нативный ls, вывод форматируется в «таблицу», и можно этим nu обрабатывать дальше

vmx ★★ ()

Теперь жду инновационный вим на расте. Идея такая: все как в обычном виме, но на расте.

bread ()
Ответ на: комментарий от bread

инновационный вим на расте

https://github.com/xi-editor/xi-editor

Инновационность в том, что плагины, аки в vscode, пишутся на чем угодно и общаются жсоном через пайпы. В противовес вырвиглазому Vim Script

spoonbob ()
Последнее исправление: spoonbob (всего исправлений: 1)

Можно уже закапывать?

error: aborting due to 191 previous errors

Да, но пока нет^Wне компилируется.

Deleted ()

Лучше бы они powershell улучшали. Зачем убогий растоклон? Хотя выглядит вроде бы даже лучше на первый взгляд.

Deleted ()

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

quantum-troll ★★★★★ ()
Ответ на: комментарий от spoonbob

Прекрасно, теперь полный инновационный комплект. Можно приступать к вдуванию жсона в пайпы.

bread ()
Ответ на: комментарий от spoonbob

Прикинь, да, реально парсит. Я уже было хотел написать традиционное «нинужно», а там действительно продумали взаимодействие с внешними командами, это не просто игрушка. Смущает только то, что автор виндузятк и вряд ли понимает что делает.

WitcherGeralt ★★ ()
Ответ на: комментарий от quantum-troll

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

WitcherGeralt ★★ ()
Ответ на: комментарий от WitcherGeralt

копрофил

Сказал мне ленуксоид... Мде...

Deleted ()

Как думаете, bash и остальные (дырявые, глючные и неудобные) шеллы на С всё? Можно уже закапывать?

Их давно пора закопать. Более блевотной, неочевидной и какерской хрени, чем Bash и его аналоги просто не существует. Позор мира Unix.

EXL ★★★★★ ()
Ответ на: комментарий от EXL

Да ладно, все привыкли. А почем не нравится bash?

cetjs2 ★★★★★ ()

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

Допустим работаешь интерактивно в fish. Запускаешь какой-то софт, он проверяет шелл, говорит что fish не поддерживается. Рядом лежит bash, но если тебе надо только баш, то очень сложно *** просто запустить его

vertexua ★★★☆☆ ()
Последнее исправление: vertexua (всего исправлений: 1)
Ответ на: комментарий от cetjs2

Говорите за себя. Bash нужно выкинуть как можно быстрее.

RazrFalcon ★★★★★ ()

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

Legioner ★★★★★ ()
Ответ на: комментарий от RazrFalcon

Ну некоторые тупые инсталлеры, системы сборки. Я не помню точно, вроде electron-forge отваливался «Я хочу баш, у тебя есть баш, но дефолтный шелл не баш и не могу смириться»

vertexua ★★★☆☆ ()
Ответ на: комментарий от vertexua

Использую fish - ни разу не сталкивался. Если есть шебанг - то оно всё равно запустит то, что ему нужно.

RazrFalcon ★★★★★ ()
Ответ на: комментарий от RazrFalcon

Ну, допустим, скрипты не очень удобно на нём писать, ок. Для этого есть питон или даже перл, если хочется. Но вот ли не пофиг в чём команды выполнять?

WitcherGeralt ★★ ()

Потыкал, сыровато, но перспективно.

Из минусов - пока что нету help для команд, вообще. И tab-completion очень простой. Для отображения своих таблиц используют библиотеку, которая сначала конвертирует всю таблицу в строку, потом выводит. Естественно на команде ls ** и нормальном дереве файлов это работает предсказуемым образом

vertexua ★★★☆☆ ()
Ответ на: комментарий от a1batross

Не в обиду Rust-кодерам, но когда переписанное ими заменяло оригинал?

Судя потому как фраза сформулирована, есть намек что если что-то написано на Rust, то имеет фундаментальные изьяны, не позволяющие ему что-то заменять.

Если что, то вообще вещи заменяют друг друга медленно.

Вон ripgrep в мильярды тыщ раз лучше grep, но в силу того что grep стандарт - не сможет его заменить. Чтобы его заменить, нужно сделать полную совместимость

vertexua ★★★☆☆ ()
Ответ на: комментарий от Deleted

Метрическая vs имперская системы измерения. IPv6 vs IPv4.

«в мильярды тыщ раз лучше, но…»

vertexua ★★★☆☆ ()
Ответ на: комментарий от vertexua

ripgrep в мильярды тыщ раз лучше grep

чем именно, кроме скорости и сахара вроде игнорирования .git ?

next_time ★★★★ ()
Ответ на: комментарий от WitcherGeralt

Но вот ли не пофиг в чём команды выполнять?

нет, если внутри команды нужен условный оператор или цикл

next_time ★★★★ ()

И какую проблему решает этот shell?

slaykovsky ★★ ()
Ответ на: комментарий от spoonbob

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

Почему шелл должен модифицировать вывод исполняемых программ?

Deleted ()
Ответ на: комментарий от slaykovsky

Ну, во-первых, ASCII-таблички это красиво.

Во-вторых, он на Rust.

А дух новой школы живет только в Rust. Где кодят по хардкору, где программисты живут энергией, молодостью и шатают систему.

Только Rust-программисты говорят открыто и смело: RIIR!

vmx ★★ ()

Вы нарочно такую мелочь тащите на ЛОР? Сейчас опять критиканы налетят и начнут изголяться над масштабом ПО, производимого на Rust :)

Virtuos86 ★★★★★ ()
Ответ на: комментарий от next_time

Какой смысл перечислять если ты добавишь сразу в «чем кроме» список, и спросишь ещё раз. Это ж ЛОР, тут мнений не меняют ;)

vertexua ★★★☆☆ ()
Ответ на: комментарий от vertexua

Вон ripgrep в мильярды тыщ раз лучше grep

Сравнивать нужно с ag, читер. И большой вопрос чем rg лучше, кроме того что оно ржавое.

bread ()
Ответ на: комментарий от bread

Вопрос был в замене софта. Я лишь показал что лучшее не заменяет худшее. grep с нами навеки, сколько бы ripgrep, ag не написали.

По ag, вот тут логрид https://blog.burntsushi.net/ripgrep/. Можешь начинать строчить ad hominem что статья от автора ripgrep, хотя взрослые спорят конкретно о методологии

vertexua ★★★☆☆ ()
Последнее исправление: vertexua (всего исправлений: 1)
Ответ на: комментарий от vertexua

grep с нами навеки

И хорошо. Как то без нескучных шеллов, которым «нужна качественная IDE с автодополнением» очень даже хорошо живется.

bread ()
Ответ на: комментарий от vertexua

нету юникода

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

bread ()
Ответ на: комментарий от RazrFalcon

Bash нужно выкинуть как можно быстрее.

Раст весь объем мозга занял, на баш уже не осталось? Опасная штука однако.

bread ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)