Jump to content
Korean Random

Настройка ограничения длины ника в хит-логе


demon2597

  

33 members have voted

You do not have permission to vote in this poll, or see the poll results. Please sign in or register to vote in this poll.

Recommended Posts

запятую не вкрячить никак? 0,5к или точку?

зря зачеркнул,  у меня было правильно - 5000 * 10**-3 = 5, добавляем суффикс k, выравниваем вправо и дополняем нулями до 3х символов. => 05k

В общем, суффикс для чисел точно не нужен, он при необходимости выносится за пределы макроса.

 

 

Для форматирования предлагаю использовать формат printf (кроме звездочки):

 

%[флаги][ширина][.точность][размер]тип

 

{{battles:6d}}     1000 => "  1000"

{{battles:-6d}}    1000 => "1000  "

{{battles:06d}}   1000 => "001000"

 

{{kb:2f}}

{{kb:.1f}}

{{kb:0.1f}} 

{{kb:2.1f}}

 

{{name:-10.10s}}   "abcde" => "abcde     "      "abcdefghijklmno" => "abcdefghij"

 

Суффикс не предусмотрен, но можно сделать что-то типа: {{name:-10.10s..}} то есть указывать после типа. Хотя я бы наверно без суффикса все-таки пока что делал.

Edited by sirmax
Link to comment
Short link
Share on other sites

а зачем? пробелами не лучше? 

это примеры

{{name:-10.10s}} - обрезать длинные имена до 10 символов, а короткие дополнить до 10 символов и выровнять влево

{{kb:4.01f}} -  дробное, ширина 4 символа, обязательно 1 символ после запятой, добивается пробелами слева до 4х символов

Edited by sirmax
Link to comment
Short link
Share on other sites

чет тяжело переваривается, можешь расшифровку написать поподробнее, {{name:-10.10s}} и {kb:4.01f}}что именно за что отвечает? а то я только про name:-10 и kb:4 понял по ходу

Link to comment
Short link
Share on other sites

да там не сложно, чуток поиграться и понятно будет

вот это главное помнить: %[флаги][ширина][.точность][размер]тип

что такое тип? s, d, f..? и где границы этих %[флаги][ширина][.точность][размер]тип в макросе? туплю...

Edited by demon2597
Link to comment
Short link
Share on other sites

регулярки оставишь?

не знаю пока, во-первых они тяжелые, во-вторых, родной поддержки в AS2 нет, надо какую-то либу искать.

что такое тип? s, d, f..? и где границы этих %[флаги][ширина][.точность][размер]тип в макросе? туплю...

s - строка

d - int

f - float

http://ru.wikipedia.org/wiki/Printf#.D0.A1.D0.BF.D0.B5.D1.86.D0.B8.D1.84.D0.B8.D0.BA.D0.B0.D1.82.D0.BE.D1.80_.D1.82.D0.B8.D0.BF.D0.B0

 

 

граница - двоеточие: {{имя:формат}}

Edited by sirmax
Link to comment
Short link
Share on other sites

я вот читаю вот это: 

"s — вывод строки с нулевым завершающим байтом; если модификатор длины — l, выводится строка wchar_t*. В Windows значения типа s зависят от типа используемых функций. Если используется семейство printf функций, то s обозначает строку char*. Если используется семейство wprintf функций, то s обозначает строку wchar_t*."

и понимаю, что это блин ахтунг- 10 раз прочитал и нихрена не понял, какая нафиг строка, зачем....это видимо явно не в первом часу ночи надо разбирать... такое ощущение, что тут нужна инструкция для "чайников" :sob0:

Edited by demon2597
Link to comment
Short link
Share on other sites

я вот читаю вот это: 

"s — вывод строки с нулевым завершающим байтом; если модификатор длины — l, выводится строка wchar_t*. В Windows значения типа s зависят от типа используемых функций. Если используется семейство printf функций, то s обозначает строку char*. Если используется семейство wprintf функций, то s обозначает строку wchar_t*."

и понимаю, что это блин ахтунг- 10 раз прочитал и нихрена не понял, какая нафиг строка, зачем....это видимо явно не в первом часу ночи надо разбирать... такое ощущение, что тут нужна инструкция для "чайников" :sob0:

сишные тонкости не читай. из этого всего нужно только "s — вывод строки

 

разбираю на части:

[флаги][ширина][.точность]тип

 

-10.10s

флаги           -

ширина        10

.точность    .10

тип               s

 

там в доку выше раздела о типе описаны и остальные разделы

 

думаю, можно нагуглить доку и по-понятней

Link to comment
Short link
Share on other sites

а размер куда делся, еще размер какой-то был 

размер не используется, это чисто сишная фигня

в общем, я так и сделаю, а вы потом разберетесь на примерах из дефолтного конфига

вот только что делать с {{c:xxx}} и {{a:xxx}}? Менять на {{c-xxx}} и {{a-xxx}}? Это ж всем конфиги переделывать придется.

Link to comment
Short link
Share on other sites

вот только что делать с {{c:xxx}} и {{a:xxx}}? Менять на {{c-xxx}} и {{a-xxx}}? Это ж всем конфиги переделывать придется.

Дак может наоборот для обрезки что-то вместо двоеточия заюзать?
Link to comment
Short link
Share on other sites

размер не используется, это чисто сишная фигня

уже лучше:) про точность теперь: .10 и .01 это как понять? как я понял,.01- один знак после запятой, а 10? и для чего точность в строковом типе?

 

а вы потом разберетесь на примерах из дефолтного конфига

да, возможно поигравшись быстрее дойдет 

 

Дак может наоборот для обрезки что-то вместо двоеточия заюзать?

точку с запятой, не? али нельзя может

Edited by demon2597
Link to comment
Short link
Share on other sites

уже лучше:) про точность теперь: .10 и .01 это как понять? как я понял,.01- один знак после запятой, а 10? и для чего точность в строковом типе?

для строки точность - это максимальная длина, а для дробного числа - количество отображаемых знаков после запятой, причем если стоит ведущий 0, то эти знаки всегда будут отображаться: 0.03f => 1.500

точку с запятой, не? али нельзя может

сделаю процент:

 

<font color='{{c:kb}}'>{{kb%2d}}k</font>

Link to comment
Short link
Share on other sites

 

 

сделаю процент
тоже хорошо

 

для строки точность - это максимальная длина
а ширина тогда зачем? я думал это оно и есть 

ширина обрезает, а точность удлиняет? а чем заполняется удлинение? точками?

Link to comment
Short link
Share on other sites

а ширина тогда зачем? я думал это оно и есть 

ширина обрезает, а точность удлиняет? а чем заполняется удлинение? точками?

длинные обрезаются, короткие расширяются, заполняется пробелами.

опять же, это только пример.

 

Из доки:

ширина - это минимальная длина строки

точность - максимальная длина строки

Edited by sirmax
Link to comment
Short link
Share on other sites

опять же, это только пример

ну ладно, в целом более менее ясно стало, будем ждать мега фичу:) что мне определенно нравится- что кроме возможности настройки всех макросов и в любом месте и по разному, можно еще и выравнивать в обе стороны- круть:) 

Edited by demon2597
Link to comment
Short link
Share on other sites

Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...