Comments: |
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 05:19 pm |
---|
| | | (Link) |
|
я активно пользуюсь
например, работаешь через медленное соединение, всё тормозит, но тебе лень ждать, и ты хуячишь, хуячишь а потом хуяк, кровь, кищки, распидорасило
возвращаешься обратно медленно и смотришь, на какой ступени изменения были ещё осмысленные. Для этго надо откатить это самое изменение и применить его вновь.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:24 pm |
---|
| | | (Link) |
|
вообще-то не «reapply», а «redo». буфер redo, натурально, уничтожается после любого изменения состояния, так что «добрать кусок и применить redo» не выйдет.
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 05:30 pm |
---|
| | | (Link) |
|
не знаю, какая-то непонятная терминология, в редакторе, которым я пользуюсь, есть история изменения буфера на много шагов назад(впрочем, это достаточно общая фича), которые умеют откатывать только на один шаг -- пожалуй, не нужны
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:37 pm |
---|
| | | (Link) |
|
«назад» — это undo. вперёд после undo, если ничего не менял — это «redo».
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 06:32 pm |
---|
| | | (Link) |
|
это понятно, но там не один буфер, там целая цепочка буферов впрочем, вся эта история сбрасывается при внесении новых изменений, это да
ещё вариант -- вернуться назад, скопировать в регистр старый вариант, вернуться вперёд, чтобы объединить старый и новый вариант в одно целое
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 06:35 pm |
---|
| | | (Link) |
|
буфер-то один, действий цепочка. но это технические детали.
>ещё вариант — вернуться назад, скопировать в регистр старый вариант, >вернуться вперёд, чтобы объединить старый и новый вариант в одно целое а вот те фиг: передвижение курсора тоже в undo buffer попадает. ну, так, просто потому, что я вредная скотина.
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 06:42 pm |
---|
| | | (Link) |
|
в правильных редакторах это две разные истории!
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 06:52 pm |
---|
| | | (Link) |
|
курсор сам по себе, текст сам по себе? круто.
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 07:04 pm |
---|
| | | (Link) |
|
то есть, если я изменил где-то текст, то вернуться на прежнюю позицию, даже за пределами этого изменённого текста, я уже не смогу? да уж, действительно круто
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 07:19 pm |
---|
| | | (Link) |
|
mcedit забавно сохраняет все передвижения курсора. мне это нравится, можно мультик смотреть.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:25 pm |
---|
| | | (Link) |
|
ну и да: редактор в данном случае иксовый, так что если тормозит соединение — то адово тормозит абсолютно всё, и ничего осмысленного делать всё равно не получится.
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 05:37 pm |
---|
| | | (Link) |
|
в случае быстрого соединения тоже есть применения, типа такого очень примитивного сорс контроля: нахуячил какой-то хуйни, проверил -- не работает, откатил назад, смотришь -- тоже какая-то хуйня, подумал, почесал репу -- и решил, что лучше всё же нахуяченное отлаживать, сделал redo
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:38 pm |
---|
| | | (Link) |
|
«save as» работает лучше. %-)
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 05:38 pm |
---|
| | | (Link) |
|
заебёшься всё время новые имена придумывать
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:40 pm |
---|
| | | (Link) |
|
.00 .01 .02 .03 .100500
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 05:41 pm |
---|
| | | (Link) |
|
...а потом они валяются, и ты не помнишь, откуда они взялись и на какой хер сдались, но удалять жалко!
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:45 pm |
---|
| | | (Link) |
|
а зачем валяются? все файлы с подобными цифровыми расширениями следует удалять нахуй, как только заработало. я периодически так делаю для изменений в несколько строчек, когда сорить в гит не охота.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:45 pm |
---|
| | | (Link) |
|
ну и вообще, git init. рефлекторно, перед созданием файла в редакторе. это ж не svn, отлично подходит для контроля текстовичков.
From: | (Anonymous) |
Date: | November 17th, 2013 - 05:33 pm |
---|
| | | (Link) |
|
она отменяет действие команды ундо же. на тот случай если случайно ее выполнил
From: | alamar |
Date: | November 17th, 2013 - 05:38 pm |
---|
| | | (Link) |
|
Приходится, но redo тоже говно, а надо сохранять дерево правок и хождений по ним.
Потому что сейчас redo в худшем случае однократное, а в лучшем - всё равно хериться, если сделать undo и что-то поменять.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:41 pm |
---|
| | | (Link) |
|
конечно, херится. потому что поддерживать его в консистентном состоянии после изменений — это ёбаная пиздецома, пусть ней занимаются те мазохисты, которые без такого жить не могут.
вот потому я и интересуюсь, есть ли шибкий смысл в redo, который всё равно проебётся после случайного нажатия на кнопочку.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:44 pm |
---|
| | | (Link) |
|
впрочем, я тебя неверно понял, кажется. ты имел в виду «при наличии непустого redo и изменении делать новый бранч документа, а при возврате на точку бранча давать выбор, куда redo катить — на старый, или на новый», так?
если да — то это проще, конечно. но это уже из разряда «пишем более-менее серьёзный редактор». а у меня МегаТулкит для окошек с тремя кнопками, такой редактор будет занимать больше, чем все остальные контролы, йопт.
From: | alamar |
Date: | November 17th, 2013 - 05:53 pm |
---|
| | | (Link) |
|
Второе.
Ну не делай.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 05:47 pm |
---|
| | | (Link) |
|
кстати, изобрести удобный и понятный гуй для второго случая — задача далеко не тривиальная.
From: | alamar |
Date: | November 17th, 2013 - 05:54 pm |
---|
| | | (Link) |
|
0Если не делать redo, логично также не делать истории для undo, а чтобы повторный undo делал redo.
Иначе бывает обидно - пишешь пост, нажал случайно ctrl-z - пол-абзаца уехало, нажал ещё раз - весь абзац уехал и амба :)
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 06:09 pm |
---|
| | | (Link) |
|
как можно СЛУЧАЙНО нажать ctrl+z?! O_O
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 06:40 pm |
---|
| | | (Link) |
|
...а вот ggVGs вполне может кошка натоптать, да и одного s порой достаточно
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 06:40 pm |
---|
| | | (Link) |
|
модальные редакторы — это не средство работы с текстом, а пыточные механизмы.
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 06:46 pm |
---|
| | | (Link) |
|
бедность ассортимента горячих клавиш, как правило, означает бедность функционала софтины, и почти всегда -- неудобство в использовании. Мышка -- для быдла, клавиатура(в частности хоткеи) -- для настоящих джедаев. А чем больше горячих клавиш -- тем больше вероятность нечаянно перекосоёбить весь текст.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 06:52 pm |
---|
| | | (Link) |
|
идиотская система vi — это тяжёлое наследие медленных и кривых говнотерминалов. перемещение некурсором можно сохранить (с зажатым ctrl), правда. основным режимом должен быть режим «свободного редактирования», а командный режим как раз хоткеем включать.
да, я знаю про gvim.
![[User Picture]](http://lj.rossia.org/userpic/204291/215) | From: | do_ |
Date: | November 17th, 2013 - 07:13 pm |
---|
| | | (Link) |
|
с учётом развития современных технологий анонимизации, которые -- увы! при всех преимуществах не отличаются скоростью наследию медленных и кривых говнотерминалов ещё долго будут находиться применения
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 07:20 pm |
---|
| | | (Link) |
|
ну дык не надо по такому каналу «войнуимир» редактировать. а файл помельче — слил, починил, залил назад.
From: | (Anonymous) |
Date: | November 17th, 2013 - 10:14 pm |
---|
| | | (Link) |
|
зато удобно записывать макросы, ну и всякие ништяки вроде di" и быстрой навигации между абзацами, предложениями
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 11:00 pm |
---|
| | | (Link) |
|
ну так я же не говорю «аннигилировать». но никак не делать эту жопную магию основным режимом.
From: | alamar |
Date: | November 17th, 2013 - 09:14 pm |
---|
| | | (Link) |
|
Я всё время нажимаю ненужные кнопки, потому что клавиатуру держу на весу и на коленях, или это убоищный ноутбук.
Ну если редактор шибко умный, и объединяет несколько однотипных изменений в одно, то пользуюсь. То есть один раз undo -- мало, второй раз undo -- ой, блять, где пол-текста, redo и правим.
И ещё иногда пошёл там водички попить, потом посуду помыл, потом пожрал, потом посрал, возвращаешься, и нихрена не помнишь что делал. Тогда откатил изменения, посмотрел, где чего исчезло, обратно их накатил и дальше пошёл клаву топтать.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 06:40 pm |
---|
| | | (Link) |
|
вот с объединением, кстати, я хуй знает, что делать. с одной стороны undo по символу иногда дико раздражает. а с другой — не менее дико бесит, когда ХУЯК! — и оно откатило кучу текста. причём принцип группировки, похоже, знает только тот индиец, который вхуячил туда ёбаный индийский рандом.
From: | alamar |
Date: | November 17th, 2013 - 09:25 pm |
---|
| | | (Link) |
|
+1 к боли об индийском рандоме.
Не будь индийцем -- опиши принцип в manpage.
ИМХО, по логике должно быть две группы: принадлежащие Императору последовательно введённые символы до перевода каретки (ну или что в текущей системе играет роль endl) и символы, вставленные из буфера обмена.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 17th, 2013 - 11:01 pm |
---|
| | | (Link) |
|
>опиши принцип в manpage да ты ебанулся — ещё и маны писать. может, и код документировать?!
«по логике» много чего придумать можно. например, таймаут с последнего нажатия. или по словам. или индийским рандомом.
Да, я ебанулся.
У меня даже в скриптах комментарии есть. И большой коммент с версией и историей изменений в начале.
Ну если мы про текстовый редактор, то и логика должна быть текстовая. Так что таймаут с рандомом отпадают.
А вот счётчик слов хотел предложить, но потом подумал, что тип текста, для которого это будет актуально, вряд ли войдёт в стандартный юзкейс. Значит, и нефиг лишнюю мульку писать
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 18th, 2013 - 12:00 am |
---|
| | | (Link) |
|
вот как раз таймаут, по-моему — вполне логичен. стучишь быстро — группа. завис — всё, конец группы.
впрочем, всё равно сделаю побуквенно. потому что я садист, и потому что лень выдумывать — ёба, это не навороченый текстовый редактор, это сраный виджет в сраном тулките!
Пользуюсь нечасто, но когда такой функции в редакторе нету -- поубивал бы.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | From: | ketmar |
Date: | November 18th, 2013 - 02:05 am |
---|
| | | (Link) |
|
ah, good. i love to irritate people. just like John Cleese did in his show. but anyway… counted one more point for 'redo' functionality. tnx.
много зачем. Например просто случайно пролетаю при undo. Или понимаю, что не сохранил в гите какое-то старое состояние, которое было интересно. Тогда откатываюсь туда, сохраняюсь или копирую что надо, возвращаюсь вперёд. Возможно ещё что-нибудь, сейчас не вспомню. | |