LINUX.ORG.RU

(neo)vim, разные отступы для html, css, js, php в одном файле php

 ,


0

1

Я обычно пишу все в одном файле *.php, иначе потом забываю какие файлы нужно закинуть через WinSCP на сервер, а какие нет. Там есть php, html, js, css.

Но я привык иметь для css и html отступ в два пробела, а для php и js в четыре. Как мне это настроить? Речь про авто-отступ.

★★★★

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

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

Я похожим страдал в одном проекте где у меня в python-е было слишком много SQL кода (где-то до половины кодовой базы, потому как postgresql порвал pandas как тузик грелку по производительности того что мне надо было и по потреблению памяти - пандасу надо было при всех возможных ужимках аппетита на питоне 78 гигабайт оперативки (ну кроме тех которые производительность ещё ниже загоняют), а postgresql хватило 6 гигов чтоб всё быстро переварить). Решением стало то что я начал писать код на python-е, который писал мне код который уже отрабатывал. Это значительно сократило как и объём писанины (у меня больше 700 столбцов запросом должно было проверяться), так и количество ошибок (попробуй не пропусти какой-то из них когда код ручками пишешь). Так что тебе дело говорят, чтоб писать код отдельно (может даже генерируя на лету) и собирать его потом в простыню.

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

Тогда следующие вопросы:

1. А что с подсветкой PHP? Ставить что нибудь ноджс подобное не хочется, желательно решение «полегче». Может из вима можно импортировать?

2. Как заставить работать несколько языков в одном документе? Это работает «из короби»? Просто прописать разный indent для разных языков и все?

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

А что с подсветкой PHP

Не пользуюсь PHP, скорее всего надо поставить пакет php-mode встроенным пакетным менеджером.

Как заставить работать несколько языков в одном документе? Это работает «из короби»?

Из коробки не работает, есть несколько пакетов. Из более-менее живых — polymode и mmm-mode.

Просто прописать разный indent для разных языков и все?

По идее да, должно сработать.

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

Прописал то что по ссылке, и добавил

autocmd Syntax html exit
Почему то exit никогда не срабатывает при перемещении по файлу... Как мне сделать тригер на установку shiftwidth?

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

Последнее время использую vscode или с плагином remote (он запускает второй vscode на удаленной машине в консоли по ssh и ты как будто работаешь на удаленной машине напрямую). Или ssh fs (редактирует файлы по ssh напрямую на удаленной машине).

Никаких копирований со своей машины давно не использую.

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

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

polymode требует написать свои полимоды для php файла, я не осилил... Без этого никаких полимодов нету.

no-such-file а что используешь ты?

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

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

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

в neovim без костылей пока никак. В теории treesitter умеет рекурсивно вызывать плагины для блоков кода, благодаря этому он например умеет их подсвечивать в markdown. Но в neovim вроде как пока нет api, чтобы пробрасывать такие события в lua, где на них можно было бы навесить коллбек «сменить отступ».

Так что пока остается только гуглить плагины с такой функциональностью.

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

И что, с помощью этого паттерна он избавился от jsx и скриптов? Нет конечно.

Наверное ты хочешь мне предложить взять сторонний шаблонизатор, потому что использовать нормальный, то есть сам пхп, это недостаточно смузично?

MOPKOBKA ★★★★
() автор топика