BlockIndent — Смещение блока

Здесь можно обсудить ваш любимый плагин.
shamilbi
Posts: 49
Joined: Fri 09 Mar, 2007 07:12
Location: Томск

BlockIndent — Смещение блока

Post by shamilbi »

Кто знает, BlockIndent жив еще? Нашел баг, написал автору на trexinc@yandex.ru, письмо завернули обратно:(
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: BlockIndent

Post by t-rex »

А я тут :)
User avatar
Skirda
Posts: 3475
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 8 times

Re: Block Indent — Смещение блока

Post by Skirda »

shamilbi wrote:Нашел баг, написал автору...
А здесь твой баг обсудить не пытался?
We are the Borg. You will be assimilated.
So Say We All!
shamilbi
Posts: 49
Joined: Fri 09 Mar, 2007 07:12
Location: Томск

Re: Block Indent — Смещение блока

Post by shamilbi »

bug при работе с FAR 1.71.2315: если в опциях редактора всключить "expand newly entered tabs to spaces", то плагин вместо пробелов добавляет табы, а при "expand all tabs to spaces" при нажатии TAB выделенная область смещается, что неудобно, если выделена вся строка.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Block Indent — Смещение блока

Post by t-rex »

Первое если происходит то это баг фара ибо плагин "нажимает" табы а не вставляет их, надо будет смотреть код фара.
Второе не понял и вообще причём там настройка табов фара?
shamilbi
Posts: 49
Joined: Fri 09 Mar, 2007 07:12
Location: Томск

Re: Block Indent — Смещение блока

Post by shamilbi »

Второе не понял и вообще причём там настройка табов фара?
В 1-м случае, если выделить всю строку и нажать таб, то строка сдвигается вправо, но сама выделенная область остается на месте. Это очень удобно, когда нужно выделить несколько строк, сдвинуть из вправо, убрать в clipboard, и скопировать из clipboard в другом месте текста.
Хотелось бы, чтобы плагин вел себя также и во 2-м случае.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Block Indent — Смещение блока

Post by t-rex »

Ну плагин вообще выделение не трогает, он тока "нажимает" табы а выделение уже фар как хочет так и двигает.
shamilbi
Posts: 49
Joined: Fri 09 Mar, 2007 07:12
Location: Томск

Re: Block Indent — Смещение блока

Post by shamilbi »

Вообще, лучше было бы встроить BlockIndent в редактор Фара - ведь теперешее поведение редактора в выделенной области при нажатии таба вряд-ли кого уже устроит. И спасибо автору за такой простой и нужный плагин - пользуюсь им уже много лет.
User avatar
t-rex
Страшный и ужасный
Posts: 4910
Joined: Tue 15 Mar, 2005 16:17
Location: Tel-Aviv
Has thanked: 1 time
Been thanked: 8 times
Contact:

Re: Block Indent — Смещение блока

Post by t-rex »

Причём тут вообще встраивание плагина в фар и то что ты говоришь? И я вообще не помню чтоб когда то было другое повидение.
И это, автор это я если ещё не понял.
dolzenko
Posts: 452
Joined: Wed 19 Apr, 2006 14:42
Location: Ростов-на-Дону

Re: Block Indent — Смещение блока

Post by dolzenko »

Хороший плагин, автору спасибо, но есть следующая проблема: если текущее выделение не охватывает N строк полностью при попытке сделать

Code: Select all

Tab Indent right
происходит неприятность - текст частично сдвигается, частично теряется.
Можно частично обойти эту проблему макросами, но по-моему только частично (всмысле нет ведь способа узнать что текущее выделение охватывает N строк полностью?), но что-то совсем уж костыль получается :)
ru5k
Posts: 5
Joined: Fri 09 Oct, 2009 09:31
Location: Екатеринбург

Re: Block Indent — Смещение блока

Post by ru5k »

dolzenko wrote:... если текущее выделение не охватывает N строк полностью при попытке сделать "Tab Indent right" происходит неприятность - текст частично сдвигается, частично теряется.
...
Обнаружил такую фичу (но, наверное, все же баг) редактора: если при вставке текста значение SelEnd в текущей строке больше нуля, то вставляемый текст затирает выделение в этой строке - причем, это справедливо только для последовательного выделения.

В общем, я немного подправил код плагина - удалось эту проблему обойти. Еще добавил более-менее корректный сдвиг блока вслед за сдвигаемым текстом и немного расширил меню, добавив варианты сдвига на 2, 3 и 4 пробела.

P.S. Я несколько "порефакторил" код, чтоб мне самому его было проще читать - сорри, если что не так...
Attachments
block_ind_20091009_src.zip
измененные файлы проекта
(3.16 KiB) Downloaded 182 times
block_ind_20091009_unicode.zip
(1.88 KiB) Downloaded 187 times
block_ind_20091009_ascii.zip
(1.91 KiB) Downloaded 179 times
kozyavkin
Posts: 13
Joined: Thu 25 Feb, 2010 12:08

Re: Block Indent — Смещение блока

Post by kozyavkin »

P.S. Я несколько "порефакторил" код, чтоб мне самому его было проще читать - сорри, если что не так...
Глючит при выделении строками (по ShiftDown или ShiftUp), в этом случае двигает на одну строчку больше.

Старый плагин (Ansi, v2.0) ведет себя нормально.

Far 2.0 b 1420
kozyavkin
Posts: 13
Joined: Thu 25 Feb, 2010 12:08

Re: Block Indent — Смещение блока

Post by kozyavkin »

Уличил страый плагин в съедании последней строчки, если в ней присутсвует невыделенный символ (
ru5k
Posts: 5
Joined: Fri 09 Oct, 2009 09:31
Location: Екатеринбург

Re: Block Indent — Смещение блока

Post by ru5k »

kozyavkin wrote: Глючит при выделении строками (по ShiftDown или ShiftUp), в этом случае двигает на одну строчку больше.

Старый плагин (Ansi, v2.0) ведет себя нормально.

Far 2.0 b 1420
Если это тот случай, когда курсор изначально находился (при движении вверх), или оказался (при движении вниз) в первой колонке, и при перемещении блока начинает перемещаться и нижняя строка, хотя она и остается визуально как бы не выделенной, то это не глюк - так было задумано :) Формально FAR считает, что в последней строке есть выделение, хотя и пустое. Видимо, придется поправить.
ru5k
Posts: 5
Joined: Fri 09 Oct, 2009 09:31
Location: Екатеринбург

Re: Block Indent — Смещение блока

Post by ru5k »

Исправления для моего предыдущего варианта:
1. Если есть выделенный блок, то двигаются только те строчки, в которых есть видимое выделение текста.
2. Если ничего не выделено, то двигается текущая строка.

- вроде бы так было в исходной версии.
Attachments
block_ind_20100402_ascii.zip
(1.96 KiB) Downloaded 163 times
block_ind_20100402_unicode.zip
(1.93 KiB) Downloaded 231 times
block_ind_20100402_src.zip
(3.28 KiB) Downloaded 169 times
Post Reply

Return to “Обсуждение плагинов”