Пример: можно вставить в начало строки пару пробелов или какую-то строку. Но нельзя вставить последовательность удаления (чтобы удалить сразу несколько знаков). Мне сразу, конечно, вспоминаются сигнальные штуки ^W/^H в терминалах для бэкворда/бэкспейса, но они давно умерли и у них явно должны быть аналоги, удаляющие *вперёд* (примерно, как Delete удаляет знак впереди, т.е. справа от курсора, а Backspace удаляет знак позади, то есть слева). - Сова, удочеряющая носок
причем желательно удаления всего текста. прочитал, увидел символ и удалил из памяти - Тайпан
В каких случаях это полезно: когда запускать глобальную регэкс-замену /^..// на десяти-двадцати строках лень, и проще сделать несколько раз копирование-вставку (которое быстрее, чем в каждой строке нажимать нужное число раз кнопку удаления). Ну, и вообще, интересно, что было бы в мире, в котором удаляющие знаки копируются в буфер, а потом накидываются на пользователя и рвут его когтями. - Сова, удочеряющая носок
@qub: Strike/страйк-офф как работает? Идея в том, что текст натурально удаляется (а не зачеркивается, хотя вот зачеркиваться... тоже было бы интересно). Ааа, ужас (например, скопировать в буфер стиль трех знакомест, аааа! И вклеить его потом в нужное место, похоже на то, как умеет ворд с копированием формата). - Сова, удочеряющая носок
@gluek: вполне серьёзно спрашиваю. Мне интересно, как это выходит за границы не столько существующих интерфейсов, сколько за границы существующих в людях ментальных моделей цифрового пространства. Типа, что люди могут вообразить, а что нет (и как это изменилось за тридцать-сорок лет). - Сова, удочеряющая носок
Буфер обмена тоже ведь существовал не всегда, и разных религий буфера обмена существует немало. Я вот исповедую множественность буферов обмена под названием CLCL, а большинство принадлежит к ортодоксальной конгрегации монотеистов и считает, что буфер обмена дан нам один. Я уж не говорю про тех умников, у которых буфера обмена вообще нет. - Сова, удочеряющая носок
Т.е. тебе нужно действие (удаление) заключить в виде символа, который не сработает сразу? - Gluek
(множественные буфера обмена, которые запоминают символы удаления, называются макросами и есть практически во всех текстовых процессорах, включая FAR) - Cronotopia
Да, про макросы-то понятно, я про них в первую очередь подумал. Их тоже писать дольше, чем копи-пейст, особенно если ты не пользуешься ими постоянно. - Сова, удочеряющая носок
@gluek: да, мне нужно такое действие получить в виде символа/копируемого объекта. Сейчас текстовые процессоры умеют копировать множество разных потоков, кроме символьного — там и форматирование, и метаданные про владение, локаль, время, место, черта в ступе, но нет части про действие, если только мы не переходим сразу к макросам. - Сова, удочеряющая носок
Это как в браузерах — в них табы живут отдельно от урлов. Урл ты можешь скопировать, а таб, вроде как, нет (дублировать можешь). Дальше вот что: есть табы с «историей», а есть свежеоткрытые. И если ты просто скопируешь из таба адрес, ты не получишь всю историю действий, которые ты произвел с табом. Хотя в сессионной базе файрфокс и хром и опера хранят историю открытых табов на уровне действий (в Файрфоксе как минимум на уровне истории урлов и заполненных форм). Но скопировать это никак нельзя, ага. - Сова, удочеряющая носок
Вставить символ удаления — э̶т̶о̶ ̶к̶а̶к̶ ̶д̶в̶а̶ ̶п̶а̶л̶ь̶ц̶а очень просто. - Gribanov
Вопрос в том, что символ удаления у меня тут ничего не удаляет, наверное, не? - Сова, удочеряющая носок
Ну типа да, дольше писать = нужно помнить кнопку, которой вставлять символ "начало макроса" и символ "конец макроса" (т.е. в два раза больше кнопок чем для вставки "символа удаления"). - Cronotopia
Вставить — да, но как его потом удалять? - Gribanov
Ох, я недообъяснил, значит. По моей идее, ты можешь скопировать символ удаления с места удаления, потом вставив его в тридцати других нужных местах (вставка == сама по себе макрос, согласен?). А с обычным макросом надо начать запись, провести действие, остановить запись, потом уже нажать тридцать раз запуск макроса в нужных местах. Мне показалось, что вон та часть про копирование должна как-то помнить про «историю действий», и уметь вставлять не только знаки, но и действия. И мое это обсуждение — про то, что бы тогда было, и как это могло бы происходить. - Сова, удочеряющая носок
@gribanov: Хороший вопрос. Как бы вы его потом удаляли? Наверняка ведь у вас была бы в интерфейсе возможность удаления, ага? - Сова, удочеряющая носок
(Если идти совсем в мету, то можно было бы предложить подумать про *символы копирования и вставки*, но я пока воздержусь от этого, давайте про удаление договорим сначала. :) - Сова, удочеряющая носок
Значит это нужен специальный интерфейс, который отображает три вида: начальный, промежуточный и конечный. В промежуточном можно удалять удаление. - Gribanov
Мне представляется нечто вроде отдельного «режима просмотра текста» (как, например, в ворде «режим исправлений» — с выделенным «удалённым» и «вставленным») — в котором всё редактирование идёт как сплошной поток «символов редактирования» (идут-идут печатные символы, потом символ «вернуться на 10 символов назад», «выделить слово», «сделать выделение жирным») — это действительно была бы соблазнительно однородная среда (чего лично мне для форматированного текста очень не хватает) — правда, она бы кажется потребовала режима «метаредактирования» (ну да, «удалить этот символ удаления и скопировать символ копирования»), зато ух какая была бы мощь для «естественной» автоматизации... - зверёк¹
@bakava: в диалогах поиска/замены потому что ищут и заменяют, и таким символом служит *отсутствие* символа. В более совершенных случаях есть звездочки и (если нам дали регулярные выражения) есть коллбэки. Поэтому решение происходит так: «найти такую строку, оторвать ей кусок по шаблону поиска, сохранить в одном из буферов, строку заменить новой, составленной в соответствии с шаблоном замены». В этой системе не требуется действие удаления, тут уже замена есть, всё. И я не прикидываюсь шлангом, мне действительно интересно, как совместить символ и действие. - Сова, удочеряющая носок
Одновременно три состояния можно отобразить на 3D-интерфейсе. Даже на 2D c псевдо-3D, как объёмные открытки. Под каким углом смотришь — то состояние и видишь. Глянул сбоку на твит — а там символов удаления наставлено! Ещё на три страницы текста. - Gribanov
Влияют ли символы на перевод каретки? Умножают ли скобки табы? Влияют ли какие-то знаки на бэкспейс? Тут все то же самое. Речь не про грамматику разбора ведь, а про совсем простую штуку — скопировать-вставить токен действия в произвольном месте. - Сова, удочеряющая носок
Спасибо, Капитан Очевидность! У меня тоже есть немало вариантов, не поверишь. Вот один, например: то, что было написано в этом месте до вставки символа удаления, удаляется, а то, что появилось после — остаётся. Очевидно же? Я выше же описал кейс — работа с повторяющимися событиями и копирование действий. И именно это отличие-слияние действий и символов я пытаюсь осмыслить. Скопировать бэкспейс — та же по смыслу задача, да. И у меня в постановке нет ни слова про видимость символа, только про действие. - Сова, удочеряющая носок
Добавлю: я понимаю прекрасно, что плоскость символов и плоскость действий живут отдельно друг от друга. Но как только у нас появляются макросы и буфер обмена, возникают новые инструменты для связывания этих плоскостей, новые способы думать про поток действий и объем контента. Пример с браузером и историей жизни табов я там выше тоже не зря привел ведь. - Сова, удочеряющая носок