LINUX.ORG.RU

Отступы и колонки

 , ,


0

2

Здравствуйте.
Жму C-j; жму TAB - курсор равняется на отступ предыдущей строки. Как сделать так, чтобы табуляция всегда была дефолтной?
.emacs
'(tab-always-indent t)
'(tab-stop-list (quote (4 8 12 16)))
'(tab-width 4)
...........
;(indented-text-mode)
;(setq indent-relative-maybe)

Пробовал прописать в .emacs
(default-indent-new-line)
(setq default-indent-new-line)
- без толку.

Вопрос номер 2. ;о).
Как переместить курсор (точку) в строке к колонке номер - такой-то?
Спасибо.

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

странно

M-g TAB (translated from M-g <tab>) runs the command move-to-column,
which is an interactive built-in function in `indent.c'.

It is bound to M-g TAB.

(move-to-column COLUMN &optional FORCE)

M-x move-to-column попробуй

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

Alt-g-g

это goto-line

А короче - M-g Tab, я не знаю почему у тебя не работает. Evil-mode или ещё какие-то кустомизации используешь?

О, спроси M-x describe-function на move-to-column, там биндинги показываются, если есть.

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

major-mode какой выставлен? Как правило, в major-mode'ах для языков программирования Tab забита действительно на отступ. Перезабить на вставку пробелов можно разными способами, например руками исключить Tab из карты биндингов режима (keymap):

(define-key c++-mode-map "\C-i" 'nil) ;; для c++

Перед этим ест-но проверить, что C-i действительно в этой карте есть. (C-i это клавиша табуляции)

Cheater ()
Последнее исправление: Cheater (всего исправлений: 1 )
Ответ на: комментарий от malchishplokhish

Да, и какой смысл вставлять просто экранированные списки в .emacs?

'(tab-always-indent t)

- эта строка при выполнении (evaluation) конфига не будет иметь никакого эффекта, так как eval экранированного списка даёт просто список (а не присваивает значение глобальной переменной). Для присвоения значения надо писать (setq tab-always-indent t). И замечу, что эта команда как раз даст обратный эффект - заставит клавишу Tab выполнять операцию выставления отступа, и только её.

Cheater ()

курсор равняется на отступ предыдущей строки. Как сделать так, чтобы табуляция всегда была дефолтной?

кстати, забыл традиционныи вопрос: а нафига?

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

(define-key c++-mode-map «\C-i» 'nil)

Блин, сам уже пишу с ошибками. Естественно, правильная команда будет:

(define-key c++-mode-map "\C-i" nil)
Cheater ()
Ответ на: комментарий от lazyklimm

Alt-g-g

это goto-line

Я знаю. Нужен goto-column, типа.

M-x describe-function на move-to-column

Не - никаких биндингов нет. Только описание функции.

я не знаю почему у тебя не работает. Evil-mode или ещё какие-то кустомизации используешь?

В некоторый файлах использую OUTLINE-MODE, в некоторых ENRICHED-MODE, но ALT-G-TAB не работает даже в самых простых текстах.

malchishplokhish ()
Ответ на: комментарий от Cheater

major-mode какой выставлен?

Никакой. В смысле, в .emacs никакие major-mode не прописаны. Запускаю ручками иногда, например:

M-x outline-mode

C-i работает. Надо будет запомнить.

malchishplokhish ()
Ответ на: комментарий от lazyklimm

Я не программер. Правлю в emac простые тексты. (Хотел облегчить себе жизнь). В хорошем русском первая строка в абзаце должна быть с отступом, на письме.

Ребята, подскажите лучше: что тупо прописать в .emacs, чтобы забиндить move-to-column на M-g-TAB?

Иначе придется лезть в меню кустомизации, а там поисковика по функциям нет. Пользоваться неудобно, даже M-x customize-browse.

И потом у меня останется еще один вопрос.

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

В некоторый файлах использую OUTLINE-MODE, в некоторых ENRICHED-MODE

org-mode не пробовал, кстати? Там тебе и аутлайн, и таблички, и экспорт практически во все мыслимые форматы.

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

Emacs, действительно, старый (предыдущая версия). Дело в том, что я работаю в Винде (гы- гы). Пишу по - памяти: новый GPG для Винды не поддерживает симметричное шифрование (агент есть). Таскаться с асимметричными ключами, как дурак - с писаной торбой, не хочу. Предыдущий GPG не поддерживает gpg - agent. Новый emacs не поддерживает epa-file. Приходится выкручиваться: предыдущие версии gpg и emacs с хешированием паролей на стороне редактора. Что-то прикручивать к gpg и так далее - не хочу.

(define-key goto-map «\t» 'move-to-column)

Прописал это в ~/.emacs, но как это работает - не понял. Прошу растолковать.

malchishplokhish ()
Ответ на: комментарий от lazyklimm

C-q Tab

Работает !!! Отступы делает те, что прописаны в .emacs, а не те, что в предыдущей строке. Удобно вставлять строки после какого-нибудь заголовка.

malchishplokhish ()
Ответ на: комментарий от lazyklimm

org-mode не пробовал, кстати? Там тебе и аутлайн, и таблички, и экспорт практически во все мыслимые форматы.

Не замахнуться ли мне ...? Боюсь, что org-mode труден в освоении (я чисто в emacs набил шишек, так что он стал мне дорог), к тому же - наверное - org-mode больше похож на деловой календарь. Возможно, emacs с плугинами начнет подтормаживать; я использую emacs, так как старый комп не тянет Libre Office (когда открыто много документов - тормозит дико). Экспортировать в HTML для печати я научился. Единственная проблема - строки надо ломать (в общем случае я использую «резиновую верстку»).

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

(define-key goto-map «\t» 'move-to-column)

Прописал это в ~/.emacs, но как это работает - не понял. Прошу растолковать.

Все, разобрался ! Смутило отсутствие в строке «M-g TAB». Работает. Спасибо.

Остался последний вопрос: как сделать так, чтобы номера столбцов отображались в окне приблизительно так же, как номера строк? Иначе все теряет смысл.

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

goto-map - это общий keymap для перемещений, для него уже определён префикс M-g

Emacs, действительно, старый (предыдущая версия). Дело в том, что я работаю в Винде (гы- гы). Пишу по - памяти: новый GPG для Винды не поддерживает симметричное шифрование (агент есть). Таскаться с асимметричными ключами, как дурак - с писаной торбой, не хочу. Предыдущий GPG не поддерживает gpg - agent. Новый emacs не поддерживает epa-file. Приходится выкручиваться: предыдущие версии gpg и emacs с хешированием паролей на стороне редактора. Что-то прикручивать к gpg и так далее - не хочу.

ох, как сложно

lazyklimm ★★★★★ ()
Последнее исправление: lazyklimm (всего исправлений: 1 )
Ответ на: комментарий от malchishplokhish

Его можно использовать исключительно как продвинутый outline.

И, да, тормозить от этого emacs не начнёт.

lazyklimm ★★★★★ ()
Последнее исправление: lazyklimm (всего исправлений: 1 )
Ответ на: комментарий от lazyklimm

ох, как сложно

В Linux проще. Emacs не идеал (идеал, в принципе, трудно достижим - запросы у всех индивидуальны), НО !!! - это лучший редактор из всех, что я знаю. Не нравится идеология Vi - все время переключаться между режимами, но это тоже все индивидуально.

Перешел с visual-line-mode на auto-fill (перестал работать C-j, но - по крайней мере - документы готовы к выводу на печать (через браузер)), но пользоваться move-to-column (M-g TAB) всеравно неудобно без нумерации колонок по - типу нумерации строк.

Я бы дернулся в сторону org-mode, если бы там бала простенькая программка по учету домашних финансов (наряду с органайзером), а Thunderbird и GnuCash снес - тоже тяжеловаты для четвертого пенька.

Если нету желания писания комменты, тему можно считать закрытой. Всем - спасибо!

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