 Отправлено: 05-Май-2021 22:25
(спустя 1 час 53 минуты)
cartmenezz
  - Стаж: 9 лет 7 месяцев
- Сообщений: 527
- Репутация:14[+] [-]
- Откуда: Калининград
|
Ander_73, ух!)) как говорится нет ничего невозможного)) но конечно, я когда спрашивал, думал есть варианты попроще, не предполагал что придется изобретать)) Большое спасибо! PS: set /p "var=%del% Enter: " я кстати тоже пробовал, только в переменную %del% наивно пытался пробел предварительно записать (хотя это наверное то же самое что просто пробел написать... но надежда умирает последней)) и ещё пробовал: set /p "var=$S Enter: " (подсмотрел, кстати в аннотации к Prompt, вспомнил что там были всякие такие штуки, для вывода символов, надеялся что и пробел так вывести можно).. ... я правильно понял, в вашем решении в переменную попадает символ удаления, и PromptString его "засчитывает" за видимый символ, и последующие пробелы уже не воспринимает как пробелы в начале строки и поэтому они не отсекаются?
Последний раз редактировалось: cartmenezz (2021-05-05 22:45), всего редактировалось 2 раз(а)
|
Ander_73
  - Стаж: 8 лет 2 месяца
- Сообщений: 3983
- Репутация:127[+] [-]
|
cartmenezz, можно проще - первым символом прописать 0х7 (BEL). Но будет пищать спикером.
|
cartmenezz
  - Стаж: 9 лет 7 месяцев
- Сообщений: 527
- Репутация:14[+] [-]
- Откуда: Калининград
|
Ander_73, а нет символа, который отвечает за то чтобы ничего не делать?
|
Ander_73
  - Стаж: 8 лет 2 месяца
- Сообщений: 3983
- Репутация:127[+] [-]
|
85315в вашем решении в переменную попадает символ удаления, и PromptString его "засчитывает" за видимый символ, и последующие пробелы уже не воспринимает как пробелы в начале строки и поэтому они не отсекаются? Бинго!а нет символа, который отвечает за то чтобы ничего не делать? Почему бы тебе самому не поискать? Смысл игры ты уже понял
|
cartmenezz
  - Стаж: 9 лет 7 месяцев
- Сообщений: 527
- Репутация:14[+] [-]
- Откуда: Калининград
|
85318Почему бы тебе самому не поискать? Смысл игры ты уже понял для начала пытаюсь разобраться, как вообще выводить ASCII символы в cmd (0х7 ведь из этой оперы?).можно проще - первым символом прописать 0х7 (BEL) уже не кажется что это действительно проще, ну или я не в той степи ищу)) ... да в приципе, предложенный вами вариант с символом Backspace вполне устраивает, еще раз спасибо
|
Ander_73
  - Стаж: 8 лет 2 месяца
- Сообщений: 3983
- Репутация:127[+] [-]
|
cartmenezz, я пользуюсь Far Manager и в нём, чтобы прописать в батнике символ 0х7, я нажимаю Ctrl+Q Ctrl+G В тексте это выглядит примерно так:
|
cartmenezz
  - Стаж: 9 лет 7 месяцев
- Сообщений: 527
- Репутация:14[+] [-]
- Откуда: Калининград
|
Ander_73, еще порылся, поискал, наткнулся вот на этот пост: https://stackoverflow.com/a/28133147 (и позже еще на кучу дублей на других сайтах, на stackoverflow, как я понял, оригинал) Там использовали редактор EDIT (из DOS). К сожалению файлик SET_with_backspace_char.txt (с символом Backspace) я скачать не смог, искал его по сети (как раз тогда и обнаружились дубли), но везде была та же ссылка.-В итоге все оказалось проще, достаточно было AkelPad, которым я итак пользуюсь: 1. просто ввел символ BACKSPACE с помощью комбинации Alt+8 2. Сохранил в кодировке 866 (OEM) * сначала сохранял в 1251 (ANSI), которая стояла по умолчанию - Не прокатило: * в обоих вариантах (866/1251) было предупреждение о том, что символ будет утерян, и после сохранения символ менял вид (но на разный). * но после сохранения в 1251 он был виден в консоли, а после сохранения в 866 - нет * после сохранения в 866, и пересохранения в 1251/1252 символ не менялся и оставался невиден в консоли (видимо, главное изначально в 866 сохранить)@echo off set /p "var= Enter: " -   -PS: правда нигде кроме Win10 не проверял UPD: проверил из-под WinPE (win8, win7, winServ2003) - все норм, наверное и с XP проблем бы не было
|
UserX
  - Стаж: 10 лет
- Сообщений: 859
- Репутация:40[+] [-]
|
cartmenezz, а с помощью шестнадцатеричного редактора было бы не проще поменять любые символы на нужные вам?
|
Ander_73
  - Стаж: 8 лет 2 месяца
- Сообщений: 3983
- Репутация:127[+] [-]
|
cartmenezz, UserX, вставить в текст "левый" символ - легко. Как потом с таким текстом работать? Первое же сохранение "съест" все такие художества. А использовать "особливый" редактор - это обрекать свои проекты на изоляцию. Как публиковать такие тексты в сети, например?
|
cartmenezz
  - Стаж: 9 лет 7 месяцев
- Сообщений: 527
- Репутация:14[+] [-]
- Откуда: Калининград
|
UserX, наверное  я в процессе поиска про него вспоминал, но тогда я пробовал просто из бинарника вытащить символ "пустоты", получил на выходе MZ` и забил на это., а пропечать в нем 08 не подумал Добавлено через 17 минут 46 секунд: Ander_73, ну, поидее даже без спецсимволов обычным блокнотом, как правило, батники не редактируют. напримр если нужна кирилица, то уже придется пользоваться каким-нибудь редактором. Впрочем, я с вами согласен но конкретно с этим символом, вроде все ОК - попробовал его копировать/вставлять (и делать другие изменения в батнике) в обычном блокноте - проблем не появилось
|
Ander_73
  - Стаж: 8 лет 2 месяца
- Сообщений: 3983
- Репутация:127[+] [-]
|
85337но конкретно с этим символом, вроде все ОК - попробовал его копировать/вставлять (и делать другие изменения в батнике) в обычном блокноте - проблем не появилось Щикарно! (с) Давай, опубликуй здесь, в сообщении, кусок текста с этим "беспроблемным" символом.
|
Страница 47 из 94
Текущее время: 20-Апр 19:14
Часовой пояс: UTC + 3
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете прикреплять файлы к сообщениям Вы можете скачивать файлы
|
|