Pull to refresh
9
0
Анатолий Парпалыгин @027

Админ локалхоста

Send message
Оставлю, пожалуй, вас мучаться с тьмой стороннего кривого софта.

На шелле пишу скрипты уже 20 лет и уж наверное разобрался бы с какой-то ерундой.

Я вижу. С такой ерундой, как терминология, за 20 лет не разобрались. Утилита sh, надо же. :)
Не знаю, что там за трудности в вашей макоси, что за конвейеры вам понадобились и зачем пихать имена файлов в переменные окружения, но если имелись в виду каналы (pipe), перенаправления и переменные вообще, то вот:
$ cd ~/1
$ cat too_many_dashes.txt
–—‒―‐‑ー一
$ cat too_many_dashes.txt > test.txt
$ cat test.txt
–—‒―‐‑ー一
$ cat test.txt | sort
–—‒―‐‑ー一
$ cat test.txt | sort > test2.txt
$ cat test2.txt
–—‒―‐‑ー一
$ cat test2.txt | grep "–"
–—‒―‐‑ー一
$ TEST=`cat ~/1/test2.txt`; echo $TEST
–—‒―‐‑ー一

У меня в линуксе ничего не ломается.
локаль
$ locale
LANG=ru_RU.UTF-8
LANGUAGE=ru
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=

От немолодого и не фаната, но все же:
sed -i -r 's/[–—‒―‐‑ー一]/-/g' file
(кодировка utf-8)

Пользуйтесь на здоровье. :)

А как вам такая версия?


на стыке двух дорог-старой Смоленской

:)

Ностальжи
На мотив «Я люблю тебя, жизнь»:
«
Век живи, век учись,
Попивая чаек с маргарином.
Век живи, век учись,
А помрешь все равно ты дубиной.
»
(старая студенческая пародия)

Ничего тут спорного. Не должны. Точка.
Но и вендоры грешат этим. Аатодеск, например, очень любит длинный дефис в папках (перед языком локализации)

И вендоры вам лично тоже ничего не должны в именах файлов. Не можете справиться с парсингом? Ваша личная проблема.
Повесить на капслок: в иксах можно, в винде и маке не знаю.
Насчет обработки длительного нажатия не в курсе, никогда от таком не слышал.
технология (4 уровня) придумана была уже на ZX-Spectrum — там на 40-клавишной клавиатуре

О, Спекки, любовь моя, ты мне достался только в шестом экземпляре — предыдущие пять, что я собрал, диспетчера и пилоты буквально вырывали из рук.
Способ с Level 3 тоже хорош, если используется везде исключительно одна ОС

Вообще-то на всех ОС практически. :)
А еще есть т.н. цифровой минус, и бог знает еще сколько черточек в этом вашем юникоде.
Не стал углубляться в дебри, основная тема статьи все же Level 3.
В никсах никаких проблем — ловим всевозможные варианты grep'ом, sed'ом, awk'ом, выбрать по вкусу.
А в «батниках», это да, боль. Впрочем, сами батники одна сплошная боль.
Не стоит, также, забывать, что пользователи вам ничего не должны, и имеют полное право именовать файлы, как им хочется.
и второй момент не подходит если я хочу чтобы значение 0 например присвоилось и не проигнорировалось и взялось дефолтное…

Ничего не понял. Сдаюсь. :)
var_dump'ом посмотри́те. :)
Я не утверждал, что нельзя. Но это никакой не уровень, это просто кейбиндинг. Получится ли его повесить — я без понятия.
А вот нажатие Ctrl + клавиша образует какой-нибудь level, или нет?

Если не повесить на нее выбор третьего уровня, то нет. А если повесить, она перестанет работать, как Control (может быть, не во всех ситуациях, но там, где возможен ввод текста — точно перестанет).

Не подходит для чего именно?

isset() даст true, если переменная существует и ей не присвоено NULL.
!empty() даст true, если переменная существует, и заодно не NULL, не нуль (целое либо дробное), не символ нуль (string '0'), не пустая строка, не пустой массив, не false.

То есть, делает примерно то же, что и if внутри скобок. На практике такая проверка нужна часто, а empty() удобна тем, что не генерирует варнинг. И можно не заморачиваться предварительным объявлением переменной. В документации это прекрасно описано. Мне казалось, это даже коты знают, а поди ж ты. :)
Собственно, NULL — это даже не пустое значение, это отсутствие значения вообще. Даже пустого.
У очень многих, если не у подавляющего большинства, дефолтные клавы от вендора, а не гугловская.
Да, похоже. Упорот упорный прогер, уж сколько лет его пинают. Ждем обновленного патча от каноникла.
Ушаков, Ожегов и Даль с вами не согласны.
Не говоря уж о том, что камрад GeMir возражал против женского рода. ;)

Information

Rating
Does not participate
Location
Волгоград, Волгоградская обл., Россия
Date of birth
Registered
Activity