LINUX.ORG.RU

Ответ на: комментарий от Nervous

опять же не то, поскольку

M-a - к началу текуего параграфа

M-e - к концу текуего параграфа

а требуется именно до точки. Это не всегда совпадающие понятия.

Dreamdrawer
() автор топика
Ответ на: комментарий от Dreamdrawer

Требуется просто прочитать то что указали

The sentence commands assume that you follow the American typist's convention of putting two spaces at the end of a sentence. That is, a sentence ends wherever there is a ‘.’, ‘?’ or ‘!’ followed by the end of a line or two spaces, with any number of ‘)’, ‘]’, ‘'’, or ‘«’ characters allowed in between. A sentence also begins or ends wherever a paragraph begins or ends. It is useful to follow this convention, because it allows the Emacs sentence commands to distinguish between periods that end a sentence and periods that indicate abbreviations.

If you want to use just one space between sentences, you can set the variable sentence-end-double-space to nil to make the sentence commands stop for single spaces. However, this has a drawback: there is no way to distinguish between periods that end sentences and those that indicate abbreviations. For convenient and reliable editing, we therefore recommend you follow the two-space convention. The variable sentence-end-double-space also affects filling

psv1967 ★★★★★
()

до точки (конца предложения)

Точка ≠ конец предложения. Ни в ту, ни в другую сторону, то есть не всякое предложение кончатся точкой, и не всякая точка знаменует конец предложения.

Принятая в ГНУ Емаксе (да и не только) по умолчанию условность — предложения помимо того, что оканчиваются принятыми в языке знаками препинания, еще и разделяются двумя и более пробелами. Она весьма удобна, советую ей следовать.

Zmicier ★★★★★
()
Ответ на: комментарий от Dreamdrawer

M-a — к началу параграфа

Большинство режимов в ГНУ Емаксе вообще не оперирует понятием параграфа. Вероятно, вы хотели сказать «абзаца».

Это не так. Прежде чем утверждать что-то подобное, стоит озадачиться проверить на искоробчном состоянии, для чего Емакс предоставляет удобные средства:


$ emacs -Q
<f1> k M-a

,----[ *Help* ]
| M-a runs the command backward-sentence (found in global-map), which is
| an interactive compiled Lisp function in ‘paragraphs.el’.
| 
| It is bound to M-a.
| 
| (backward-sentence &optional ARG)
| 
| Move backward to start of sentence.  With arg, do it arg times.
| See ‘forward-sentence’ for more information.
`----
Zmicier ★★★★★
()
Ответ на: Требуется просто прочитать то что указали от psv1967

The sentence commands assume that you follow the American typist's convention of putting two spaces at the end of a sentence.

вот обожаю такие вещи. и то что имаксЪ состоитЪ изЪ нихЪ.
давно уже канули в лету и американские машинистки и спейс кадет и еще много чего (и поделом), а оно всё несёт знамя хрен пойми зачем.

mos ★★☆☆☆
()
Ответ на: комментарий от Dreamdrawer

опять же не то, поскольку

Поскольку ты не умеешь читать. Настрой регексп конца предложения в твоём понимании. Дубина.

no-such-file ★★★★★
()

От точки до точки, города, расстояния Я его сокращаю, я читаю названияяяяяяяааааа !!!

anonymous
()
Ответ на: комментарий от mos

всё несёт знамя

Я очень рад тому обстоятельству что мне не надо каждые 8 лет учить новые клавиатурные сокращения (или настраивать их на каждой машине где мне надо что то сделать).

Недовольные могут пройти настраивать системД, носить трусы «навыпуск» и штаны с «заниженной ширинкой»... или что там ещё делает очередной новый кумир которому надо срочно подражать.

psv1967 ★★★★★
()

Спасибо всем за ответы-советы! Задача решена. Компиляция из вышесказанного:

Точка ≠ конец предложения. Конец предложения знаменуется не только точкой, но и другими знаками препинания («.», «?» или «!»).

Знаки препинания не всегда являются концом предложения - например в коде, сокращениях и пр.

Что бы редактор однозначно понимал конец предложения, принято ставить два пробела. В противном случае, редактор воспринимает как конец предложения только перенос строки (начало/конец абзаца).

Если необходимо использовать только один пробел между предложениями, и реагировать на знак препинания («.», «?» или «!») нужно в конфиге прописать следующее: (setq sentence-end-double-space nil)

Редактор emacs распознает концы предложений, обращаясь к регулярному выражению, которое содержится в переменной по имени sentence-end. Чтобы отобразить значение этой переменной, нужно ввести команду: CONTROL-H v sentence-end ВВОД

Переменная sentence-end управляет распознаванием конца предложения. Это регулярное выражение, которое соответствует последним нескольким знакам предложения вместе с пробелами, следующими за предложением. Его нормальное значение таково: «[.?!][]\»')]*\\($\\|\t\\| \\)[ \t\n]*"

Если необходимо использовать между предложениями только один пробел, вам нужно установить sentence-end в такое значение: «[.?!][]\»')]*\\($\\|\t\\| \\)[ \t\n]*"

Также нужно установить переменную sentence-end-double-space равной nil, чтобы команды заполнения ожидали и оставляли в конце предложений только один пробел.

Dreamdrawer
() автор топика
Ответ на: комментарий от psv1967

Пиздец ты артиллерию пускаешь в ход в ответ на невинное замечание. Эталонное пригорание.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.