On 2013-12-07, Artem Chuprina wrote: > Хмутро. > > Этот тут мне кто-то рассказывал, что emacs24 весь из себя UTF-8 внутри? > Авотфих. Попытался я тут творчески развить just-one-space, и... > > (skip-chars-backward " \t -—–") > > (пробел, табуляция, неразрывный пробел (160), минус, em-dash (8212), > en-dash (8211)) > > не проходит назад через минус (в смысле, если курсор сразу за минусом, > он не сдвигается). Если убрать из строки, к примеру, неразрывный > пробел, то перескакивает в начало буфера. > Читаем доку:
skip-chars-forward is a built-in function in `C source code'. (skip-chars-forward STRING &optional LIM) Move point forward, stopping before a char not in STRING, or at pos LIM. STRING is like the inside of a `[...]' in a regular expression except that `]' is never special and `\' quotes `^', `-' or `\' (but not at the end of a range; quoting is never needed there). With arg "^a-zA-Z", skips nonletters stopping before first letter. Я поставил минус в конце строки - заработало )) > Обходится, понятно, тривиально, особенно если заменить строку на список > символов. Но, в общем, слухи про "весь внутри UTF-8" сильно > преувеличены... Та все ОК. Внутреннее представление символов с строке - чистый Unicode: 2.3.3 Character Type -------------------- A "character" in Emacs Lisp is nothing more than an integer. In other words, characters are represented by their character codes. Characters in strings and buffers are currently limited to the range of 0 to 4194303--twenty two bits 33.1 Text Representations ========================= To support this multitude of characters and scripts, Emacs closely follows the "Unicode Standard". The Unicode Standard assigns a unique number, called a "codepoint", to each and every character. The range of codepoints defined by Unicode, or the Unicode "codespace", is `0..#x10FFFF' (in hexadecimal notation), inclusive. Ну там в действительности 2 формы представления строк - фиксированой байтовой длины и плавающей (для компактного представления). Я не рыскам по (info "(elisp)"). -- Best regards! -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org Archive: http://lists.debian.org/871u1oq1nw....@gavenkoa.example.com