| View previous topic :: View next topic |
| Author |
Message |
temp1111
Joined: 26 Aug 2008 Posts: 36
|
Posted: Sat Jan 09, 2010 7:14 pm Post subject: Замена TABs на Spaces и обратно? |
|
|
Было бы замечательно иметь такую возможность. Масса форумов корежит вставляемые в топик исходники, если в них есть TABы, и напротив - редактировать исходники с пробелами вместо TABов - неудобно.
В ConTEXT такая фича есть - его пока и приходится для этого пользовать (
Спасибо. |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1889 Location: Vinnitsa, Ukraine
|
Posted: Sun Jan 10, 2010 7:07 pm Post subject: |
|
|
temp1111 на форумах есть специальный тег code который ничего не корёжит. За то что его не используют - втык должны сделать модераторы.
А исправить можно с помощью обычной Замены. Заменяйте "<сколько ван нужно пробелов>" на "\t" |
|
| Back to top |
|
 |
temp1111
Joined: 26 Aug 2008 Posts: 36
|
Posted: Thu Jan 14, 2010 7:11 pm Post subject: |
|
|
FeyFree, на форумах есть специальный тег code который корёжит любой текст с шириной табов, отличной от 4:
| Code: | ;== Initialization code =======================================================
reset:
outiw SP,RAMEND ; Initialize stack pointer
clr nul ; Initialize zero value holding register
rcall init_ports ; Initialize ports
rcall init_tmr1 ; Initialize Timer 1
rcall init_adc ; Initialize ADC
rcall init_uart ; Initialize UART
rcall init_lcd ; Initialize LCD
clr keyold ; Clear key debounce registers
clr keydeb ;
clr keyon ;
clr keytgl ;
ldi tmp,kdeb_ms ; Load key debounce timer
mov kdebtmr,tmp ; with predefined key debounce time value
clr stimer ; Clear software incremental timer
sei ; Enable interrupts
;#define debug
#ifdef debug
.listmac ; Turn listing macro expansion on
rjmp showkeys ; Show key debounce registers' bits on LCD
#endif
|
А вот как это выглядит с пробелами вместо табов:
| Code: |
;== Initialization code =======================================================
reset:
outiw SP,RAMEND ; Initialize stack pointer
clr nul ; Initialize zero value holding register
rcall init_ports ; Initialize ports
rcall init_tmr1 ; Initialize Timer 1
rcall init_adc ; Initialize ADC
rcall init_uart ; Initialize UART
rcall init_lcd ; Initialize LCD
clr keyold ; Clear key debounce registers
clr keydeb ;
clr keyon ;
clr keytgl ;
ldi tmp,kdeb_ms ; Load key debounce timer
mov kdebtmr,tmp ; with predefined key debounce time value
clr stimer ; Clear software incremental timer
sei ; Enable interrupts
;#define debug
#ifdef debug
.listmac ; Turn listing macro expansion on
rjmp showkeys ; Show key debounce registers' bits on LCD
#endif
|
Еще есть Волга, которая впадает в Каспийское море, и есть учителя, которые знают все - типа вас. Также есть отдельные утилиты, которые такое преобразование делают - с clipboard и файлами - но я вовсе не об этом спрашивал. И отнюдь не у вас, особенно после прочтения вашего перла "заменяйте сколько вам нужно пробелов на \t"  |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1889 Location: Vinnitsa, Ukraine
|
Posted: Thu Jan 14, 2010 10:32 pm Post subject: |
|
|
| temp1111, думаю уже поняли что ответ "такой возможности сейчас нету", и раз уж вы такой крутой низкоуровневый программист, то думаю вам не составит труда самостоятельно написать скрипт к плагину который сделает то что вам нужно, а не слушать меня "всезнающего учителя". |
|
| Back to top |
|
 |
temp1111
Joined: 26 Aug 2008 Posts: 36
|
Posted: Fri Jan 15, 2010 12:44 am Post subject: |
|
|
Любезный, а я разве у вас лично что-нибудь спрашивал? Вы разве имеете какое-либо отношение к разработке и развитию AkelPad, или просто потрындеть решили? Найдите в таком случае себе более благодарную аудиторию, а то я, знаете ли, ламеров-всюду-затычек с детства не перевариваю.
"ПроходИте мимо - гостем будете"(с). |
|
| Back to top |
|
 |
Fr0sT
Joined: 24 Jul 2007 Posts: 850
|
Posted: Fri Jan 15, 2010 7:59 am Post subject: |
|
|
temp1111
о великий Гуру, просвети погрязшего во мраке невежества, чем не угодила тебе фраза "заменяйте сколько вам нужно пробелов на \t" и каковы же твои истинные цели? |
|
| Back to top |
|
 |
VladSh
Joined: 29 Nov 2006 Posts: 2509 Location: Киев, Русь
|
Posted: Fri Jan 15, 2010 9:52 am Post subject: |
|
|
temp1111
у вас, видимо, настроение плохое...
Люди /не без оснований/ думают /и даже почти уверены /, что такая функция не будет добавлена в AkelPad, и поэтому предлагают хоть что-то для решения ВАШЕЙ проблемы; за это обычно говорят спасибо. А если совет не в тему, то просто молча проходят мимо.
P.S. Исходники могут быть откуда угодно, т.е. в них может быть разное количество пробелов, да в одном и том же исходнике может быть полный разброд с отступами - и такое, к сожалению, не редкость... |
|
| Back to top |
|
 |
FeyFre
Joined: 07 Aug 2007 Posts: 1889 Location: Vinnitsa, Ukraine
|
Posted: Fri Jan 15, 2010 10:36 am Post subject: |
|
|
temp1111, любезный, создав здесь топик Вы спрашиваете у всех, кто пожелает ответить. Если Вам ответ не нравится - вы можете это высказать только мне в личку, а не в теме.
Если вы хотели спросить у конкретного человека - разработчика, то Вам нужно было бы писать ему в личку.
| Quote: | | о великий Гуру, просвети погрязшего во мраке невежества, чем не угодила тебе фраза "заменяйте сколько вам нужно пробелов на \t" и каковы же твои истинные цели? | Fr0sT, спокойствие. Совет действительно немного корявый, и не совсем ясный.  |
|
| Back to top |
|
 |
temp1111
Joined: 26 Aug 2008 Posts: 36
|
Posted: Fri Jan 15, 2010 11:59 am Post subject: |
|
|
| VladSh wrote: | temp1111
у вас, видимо, настроение плохое... |
Нормальное, рабочее
| Quote: | | Исходники могут быть откуда угодно, т.е. в них может быть разное количество пробелов, да в одном и том же исходнике может быть полный разброд с отступами - и такое, к сожалению, не редкость... | Совершенно верно. И именно поэтому на ВСЕХ phpbb-driven форумах одно из наиболее частых сообщений - "йопрст, опять форумный движок все форматирование покоцал, ща попробую повторить..."
Я упомянул и редактор (и он не один) с такой фичей, и утилитки, прекрасно это делающие - ведь очевидно, что это востребовано многими, посему и существует. AkelPad является прекрасной и более чем достойной заменой дефолтному системному "блокноту", и одна из его важнейших возможностей - это интеллектуальный MDI-буфер для тестового контента.
Наличие ВСТРОЕННОЙ возможности Tabs<>Spaces однозначно улучшило бы его и без того изрядную и рациональную функциональность - как минимум с точки зрения многочисленной армии программистов, давно и успешно пользующейся этим замечательным инструментом. |
|
| Back to top |
|
 |
Fr0sT
Joined: 24 Jul 2007 Posts: 850
|
Posted: Mon Jan 18, 2010 7:45 am Post subject: |
|
|
| FeyFre wrote: | Совет действительно немного корявый, и не совсем ясный.  |
Ну не знаю, по-моему, что может быть яснее... Ctrl-R, что: " ", на "\t", "Заменить всё". В отдельном инструменте смысла не вижу. Это ж придётся ещё и настройку делать, сколько пробелов заменять на один таб. |
|
| Back to top |
|
 |
Instructor Site Admin
Joined: 06 Jul 2006 Posts: 4640
|
Posted: Sat Apr 03, 2010 4:22 am Post subject: |
|
|
temp1111
Замена табов на пробелы - TabsToSpaces.js |
|
| Back to top |
|
 |
okruzhor
Joined: 22 Sep 2006 Posts: 49 Location: Питер
|
Posted: Sat Apr 03, 2010 10:13 am Post subject: |
|
|
| Fr0sT wrote: | | Ну не знаю, по-моему, что может быть яснее... Ctrl-R, что: " ", на "\t", "Заменить всё". В отдельном инструменте смысла не вижу. Это ж придётся ещё и настройку делать, сколько пробелов заменять на один таб. |
Внутри текста тоже возможны ряды пробелов , которые обычно надо уберечь от замены на табуляции . Тогда придётся менять в несколько приёмов , каждый раз используя нужное число пробелов после '\n' , например :
// 8 табуляций
^R
\n
\t\t\t\t\t\t\t\t
Заменить все
// 7 табуляций
^R
\n
\t\t\t\t\t\t\t
Заменить все
..... |
|
| Back to top |
|
 |
Fr0sT
Joined: 24 Jul 2007 Posts: 850
|
Posted: Mon Apr 05, 2010 6:32 am Post subject: |
|
|
Макрос можно записать
Да, и у тебя там ошибка: заменить на \n\t\t... |
|
| Back to top |
|
 |
temp1111
Joined: 26 Aug 2008 Posts: 36
|
Posted: Wed Apr 07, 2010 9:46 pm Post subject: |
|
|
Спасибо!.. только вот что получается:
- выделяю фрагмент с табами под замену
- нажимаю hotkey, назначенный для TabsToSpaces
- получаю ошибку:
Script: c:\bla-bla\TabsToSpaces.js
Line: 29
Char: 7 [это начало строки SelCompliteLine(hWndEdit, nSelStart, nSelEnd);]
Error: Object expected
Code: 800A138F
Source: Microsoft JScript runtime error [WinXP SP2]
Пробовал заменить SelCompliteLine на SelCompleteLine, сочтя за описку, но результат тот же  |
|
| Back to top |
|
 |
Instructor Site Admin
Joined: 06 Jul 2006 Posts: 4640
|
Posted: Thu Apr 08, 2010 4:56 am Post subject: |
|
|
temp1111
Скопируйте скрипт полностью ничего не меняя. Опечатку исправил. |
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|