Календар і щоденник – ЧАСТИНА 1

Emacs може працювати як настільний календар з щоденником для планованих і минулих подій Щоб увійти в календар, наберіть Mx calendar це покаже календар на три місяці, відцентрувати на поточному місяці, а точка буде знаходитися на поточній даті З числовим аргументом, як в Cu Mx calendar, ця команда запитує у вас місяць і рік, які повинні опинитися в центрі тримісячного календаря Календар використовує свій власний буфер c основним режимом Calendar

Mouse-2 в календарі виводить меню операцій для дати C-Mouse-3 виводить меню часто використовуваних засобів календаря, що не залежать від конкретної дати Щоб вийти з календаря, введіть q Див розділ Calendar в The Emacs Lisp Reference Manual, Для отримання інформації про налаштування календаря і щоденника

291  Переміщення по календарю

Режим Calendar дозволяє вам переміщатися за календарем через логічні проміжки часу, такі як дні, тижні, місяці і роки Якщо ви переміститеся за ті три місяці, які показуються спочатку, календар автоматично прокручується на стільки, скільки потрібно, щоб обрана дата стала видимою Переміщення до дати дозволяє вам переглянути припадають на неї свята або записи в щоденнику або перетворити її в інші календарні системи переміщення на великі інтервали часу також корисно просто для прокрутки календаря

2911  Переміщення по звичайних календарним одиницям

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

Cf Переміщає на день вперед (calendar-forward-day)

Cb Переміщає на день назад (calendar-backward-day)

Cn Переміщає на тиждень вперед (calendar-forward-week) Cp Переміщає на тиждень назад (calendar-backward-week) M-} Переміщає на місяць вперед (calendar-forward-month) M-{Переміщає на місяць назад (calendar-backward-month) Cx] Переміщає на рік вперед (calendar-forward-year)

Cx [Переміщає на рік назад (calendar-backward-year)

Команди для переміщення по днях і тижнях – це природні аналоги звичайних команд Emacs для переміщення по знаках або рядках Так само, як Cn зазвичай переміщує до того ж стовпцю в наступному рядку, в режимі Calendar вона переміщує до того ж дня наступного тижня А Cp переміщує до того ж дня попереднього тижня

Курcорние стрілки еквівалентні Cf, Cb, Cn і Cp, як і в інших режимах

Команди для переміщення по місяцях і роках працюють так само, як команди для тижнів, але переносять на великі відстані Команди для місяців M-} і M-{переміщують вперед або назад на цілий місяць Команди для років Cx] і Cx [переміщують вперед або назад на цілий рік

Найпростіший спосіб запамятати ці команди – розглядати місяці і роки як анало-

ги абзаців і сторінок, відповідно Але самі команди не цілком аналогічні Звичайні

команди Emacs для абзаців пересувають до початку або кінця абзацу, тоді як ці команди для місяців і років переміщують по цілому місяцю або року, що зазвичай передбачає перехід за кінець місяця чи року

Всі ці команди беруть числовий аргумент як лічильник повторів Для зручності, в режимі Calendar цифри і знак мінус задають числовий аргумент навіть без модифікатора Meta Наприклад, 100 C-f переміщує точку на 100 днів вперед від її поточної позиції

2912  Початок або кінець тижня, місяця або року

Тиждень (або місяць, або рік) – це не просто деяка кількість днів ми вважаємо, що тижнів (місяці, роки) починаються з певних дат Тому режим Calendar надає команди для переходу до початку або кінця тижня, місяця або року:

Ca Перехід до початку тижня (calendar-beginning-of-week)

Ce Перехід до кінця тижня (calendar-end-of-week)

Ma Перехід до початку місяця (calendar-beginning-of-month)

Me Перехід до кінця місяця (calendar-end-of-month)

M-< Перехід до початку року (calendar-beginning-of-year).

M-> Перехід до кінця року (calendar-end-of-year)

Ці команди також беруть числові аргументи в якості лічильників повторень, який вказує, на скільки тижнів, місяців або років потрібно переміститися вперед або назад

За замовчуванням тижні починаються з неділі Щоб зробити так, щоб вони на-

чину з понеділка, встановіть змінну calendar-week-start-day в значення

1

2913  Зазначені дати

Режим Calendar надає команди для переходу до конкретної дати, яку мож-

але задати багатьма способами

gd Переміщає точку до зазначеної дати (calendar-goto-date)

o Центрує календар навколо зазначеного місяця (calendar-other-month)

. Переміщує до сьогоднішньої дати (calendar-goto-today)

gd (calendar-goto-date) запитує рік, місяць і день місяця, а потім переміщує до цієї дати Оскільки календар включає всі дати від початку нашої ери, ви повинні вводити рік повністю тобто пишіть 1990 , А не 90.

o (calendar-other-month) запитує місяць і рік, а потім центрує тримісячний календар навколо цього місяця

Ви можете повернутися до сьогоднішньої дати за допомогою команди (Calendar-gototoday)

292  Прокрутка календаря

Зображення календаря автоматично прокручується, коли ви зрушувати за межі видимої частини Ви також можете прокручувати його вручну Уявіть, що вікно календаря містить довгу стрічку паперу з місяцями Прокрутка її означає, що в цьому вікні стануть видимими нові місяці

C-x < Прокручує календар на один місяць вперед (scroll-calendar-left). C-x> Прокручує календар на один місяць тому (scroll-calendar-right) C-v

hNEXTi           Прокручує календар на три місяці вперед (scroll-calendar-left-three-

months)

M-v

hPRIORi         Прокручує календар на три місяці тому (scroll-calendar-right-threemonths)

Самі основні команди прокрутки календаря прокручують по одному місяцю за раз Це означає, що між відображенням до команди і відображенням після робиться два місяці перекриття C-x < прокручує вміст календаря на місяць вліво; тобто вона переміщує вид вперед за часом. C-x> прокручує вміст календаря вправо, що переміщує назад у часі

Команди Cv і Mv прокручують календар по цілим екранам – по три місяці – за аналогією зі звичайним значенням цих команд Cv робить видимими більш пізні дати, а Mv – більш ранні Ці команди беруть числовий аргумент як лічильник повторів зокрема, так як Cu примножує наступну команду на чотири, набір Cu Cv прокручує календар на рік вперед, а Cu Mv прокручує на рік тому

Функціональні клавіші hNEXTi  і hPRIORi  еквівалентні Cv і Mv, як і в інших режимах

293  За рахунками днів

M-= Виводить число днів в поточній області (calendar-count-days-region)

Щоб визначити число днів в області, наберіть M-= (calendar-count-days-region) Кількість днів виводиться включно тобто дні, які вказуються точкою і влучною, враховуються

294  Інші команди календаря

pd Виводить номер дня в році (calendar-print-day-of-year)

Cc Cl Заново генерує вікно календаря (redraw-calendar) SPC Прокручує наступне вікно (scroll-other-window) q Виходить з календаря (exit-calendar)

Щоб надрукувати число днів, що минули з початку року або залишаються до кінця року, наберіть команду pd (calendar-print-day-of-year) Вона покаже обидва цих числа в луна-області Кількість минулих днів включає обрану дату Число днів, що залишилися не включає її

Якщо вікно календаря виявиться зіпсовано, наберіть Cc Cl (redraw-calendar) щоб його перемалювати (Таке може трапитися, тільки якщо ви використовуєте команди редагування не з режиму Calendar)

У режимі Calendar ви можете використовувати SPC (scroll-other-window) для прокрутки іншого вікна Це зручно, якщо ви дивитеся в іншому вікні список свят або записи щоденника

Щоб вийти з календаря, наберіть q (exit-calendar) Ця команда ховає всі буфери, повязані з календарем, і вибирає інші буфери (Якщо фрейм містить спеціально призначене вікно календаря, вихід з календаря мінімізує цей фрейм)

295  LaTeX і календар

Команди календаря для роботи з LaTEX генерують буфер з LaTEX-кодом, який друкує календар Залежно від использованой команди надрукований календар покриває день, тиждень, місяць або рік, в якому знаходиться точка

tm Генерує календар на один місяць (cal-tex-cursor-month)

t M Генерує горизонтальний календар на один місяць (cal-tex-cursor-monthlandscape)

td Генерує календар на один день (cal-tex-cursor-day)

tw 1 Генерує односторінковий календар на один тиждень (cal-tex-cursorweek)

tw 2 Генерує двохсторінковий календар на один тиждень (cal-tex-cursorweek2)

tw 3 Генерує календар у стилі ISO на один тиждень (cal-tex-cursor-week-iso)

tw 4 Генерує календар на один тиждень, що починається з понеділка (caltex-cursor-week-monday)

tfw Генерує двотижневий календар на одній сторінці в стилі Filofax (caltex-cursor-filofax-2week)

tf W Генерує тижневий календар на одній сторінці в стилі Filofax (cal-texcursor-filofax-week)

ty Генерує календар на один рік (cal-tex-cursor-year)

t Y Генерує горизонтальний календар на один рік (cal-tex-cursor-yearlandscape)

tfy Генерує календар на один рік в стилі Filofax (cal-tex-cursor-filofaxyear)

Деякі з цих команд друкують календар горізонально (в ландшафтному режимі), тому його ширина може бути більше довжини Деякі з них використовують розмір паперу Filofax (375 на 675 дюймів) Всі ці команди беруть префіксний аргумент, що задає число друкованих днів, тижнів, місяців або років (завжди починаючи від поточного)

Якщо змінна cal-tex-holidays не дорівнює nil (це значення за замовчуванням), то друкуються календарі показують свята з calendar-holidays Якщо змінна caltex-diary відмінна від nil (за замовчуванням це nil), також включаються записи з щоденника (тільки в тижневі і місячні календарі) Якщо відмінна від nil мінлива cal-texrules (за замовчуванням nil), то в тих стилях роздруківки календаря, де досить місця, сторінки розлініяний

296  Свята

Календар Emacs знає про всі великих і про багатьох малих святах і може їх відображати

h Показати свята, що припадають на обрану дату (calendar-cursorholidays)

Mouse-2 Holidays

Показати всі свята для дати, на якій ви клацнули

x Помітити свята (mark-calendar-holidays)

u Зняти мітки у вікні календаря (calendar-unmark)

a Перерахувати в іншому вікні всі свята для показаних трьох місяців (listcalendar-holidays)

M-x holidays

Перерахувати в іншому вікні всі свята для трьох місяців навколо поточної дати

M-x list-holidays

Перерахувати в іншому вікні свята для заданого проміжку років

Джерело: Річард Столмен, Керівництво по GNU Emacs

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*