Что такое регистр файла

Обновлено: 07.07.2024

Реестр Windows (англ. Windows Registry), или системный реестр — иерархически построенная база данных параметров и настроек в большинстве операционных систем семейства Microsoft Windows [2].

В реестре хранятся данные, которые необходимы для правильного функционирования Windows. К ним относятся профили всех пользователей, сведения об установленном программном обеспечении и типах документов, которые могут быть созданы каждой программой, информация о свойствах папок и значках приложений, а также установленном оборудовании и используемых портах [1].

Открытие реестра¶

Поскольку файлов в реестре несколько, его нельзя открыть, например, в текстовом редакторе и внести какие-либо коррективы. Для работы с ним требуется специальная программа – редактор реестра, который является встроенным компонентом операционной системы Windows и вызывается путем ввода команды Regedit [4].

Существует несколько способов открыть редактор реестра.

Способ №1 – Открытие через утилиту «Выполнить»:

  1. Выбрать Пуск → Выполнить, либо нажать сочетание клавиш Win+R ( Win — клавиша, между Ctrl и Alt в нижнем ряду клавиатуры, обычно на ней изображен значок Microsoft Windows ;
  2. В открывшимся окне ввести команду regedit ;
  3. Нажать клавишу ОК .

Рис. 1 – Открытие через утилиту «Выполнить»

Рис. 1 – Открытие через утилиту «Выполнить»

Способ №2 – Открытие через поиск по меню «Пуск»:

  1. Открыть меню Пуск;
  2. Ввести в строке поиска regedit и запустить найденный файл, который отобразится в верхней части Пуска.

Рис. 2 – Открытие через поиск по меню «Пуск»

Рис. 2 – Открытие через поиск по меню «Пуск»

С другими способами можно ознакомиться в статье Три способа открыть редактор реестра Windows.

Структура реестра¶

Реестр имеет иерархическую структуру, которая напоминает файловую систему жесткого диска – с его каталогами, подкаталогами и файлами. Но называются элементы реестра по-другому: верхний уровень иерархии составляют разделы, каждый из которых может содержать вложенные подразделы, а также параметры. Именно в параметрах хранится основное содержимое реестра, разделы служат лишь для группировки схожих по назначению параметров [4].

Рис. 3 – Редактор реестра

Рис. 3 – Редактор реестра

Далее приведен краткий перечень и краткое описание стандартных разделов реестра. Максимальная длина имени раздела составляет 255 символов.

HKEY_CURRENT_USER

Данный раздел является корневым для данных конфигурации пользователя, вошедшего в систему в настоящий момент. Здесь хранятся папки пользователя, цвета экрана и параметры панели управления. Эти сведения сопоставлены с профилем пользователя. Вместо полного имени раздела иногда используется аббревиатура HKCU .

HKEY_USERS

Данный раздел содержит все активные загруженные профили пользователей компьютера. Раздел HKEY_CURRENT_USER является подразделом раздела HKEY_USERS . Вместо полного имени раздела иногда используется аббревиатура HKU .

HKEY_LOCAL_MACHINE

Раздел содержит параметры конфигурации, относящиеся к данному компьютеру (для всех пользователей). Наиболее интересным является подраздел Software , который включает в себя настройки всех установленных в системе приложений. Вместо полного имени раздела иногда используется аббревиатура HKLM .

HKEY_CLASSES_ROOT

Является подразделом HKEY_LOCAL_MACHINE\Software . Хранящиеся здесь сведения обеспечивают выполнение необходимой программы при открытии файла с использованием проводника. Вместо полного имени раздела иногда используется аббревиатура HKCR . Начиная с Windows 2000, эти сведения хранятся как в HKEY_LOCAL_MACHINE , так и в HKEY_CURRENT_USER .

Раздел HKEY_LOCAL_MACHINE\Software\Classes содержит параметры по умолчанию, которые относятся ко всем пользователям локального компьютера. Параметры, содержащиеся в разделе HKEY_CURRENT_USER\Software\Classes , переопределяют принятые по умолчанию и относятся только к текущему пользователю.

Раздел HKEY_CLASSES_ROOT включает в себя данные из обоих источников. Кроме того, раздел HKEY_CLASSES_ROOT предоставляет эти объединенные данные программам, разработанным для более ранних версий Windows. Изменения настроек текущего пользователя выполняются в разделе HKEY_CURRENT_USER\Software\Classes . Модификация параметров по умолчанию должна производиться в разделе HKEY_LOCAL_MACHINE\Software\Classes . Данные из разделов, добавленных в HKEY_CLASSES_ROOT , будут сохранены системой в разделе HKEY_LOCAL_MACHINE\Software\Classes . Если изменяется параметр в одном из подразделов раздела HKEY_CLASSES_ROOT и такой подраздел уже существует в HKEY_CURRENT_USER\Software\Classes , то для хранения информации будет использован раздел HKEY_CURRENT_USER\Software\Classes , а не HKEY_LOCAL_MACHINE\Software\Classes .

HKEY_CURRENT_CONFIG

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

Реестр 64-разрядных версий Windows подразделяется на 32- и 64-разрядные разделы. Большинство 32-разрядных разделов имеют те же имена, что и их аналоги в 64-разрядном разделе, и наоборот. По умолчанию редактор реестра 64-разрядных версий Windows отображает 32-разрядные разделы в следующем узле: HKEY_LOCAL_MACHINE\Software\WOW6432Node

Файлы реестра на жестком диске¶

Основные файлы, отвечающие за формирование реестра хранятся в папке %SystemRoot%\System32\Config\ . Обычно это C:\Windows\System32\Config\ и в зависимости от версии ОС их состав может несколько различаться.

Файл, хранящий личные настройки пользователя, «скрыт» в папке соответствующей учетной записи, например, в C:\Documents and Settings\Dmitry . Также файлы, отвечающие за пользовательские настройки, могут храниться в:

  • C:\Documents and Settings\%Username%\(Ntuser.dat) ;
  • C:\Documents and Settings\%Username%\Local Settings\Application Data\Microsoft\Windows\ (UsrClass.dat) .

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

  • C:\Windows\System32\config\RegBack – для Windows 7 и Server 2008;
  • C:\Windows\repair – для XP и Server 2003.

По умолчанию операционная система делает резервные копии этих файлов раз в 10 дней с помощью планировщика задач.

Вспомогательные файлы для всех кустов за исключением HKEY_CURRENT_USER хранятся в системах Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003 и Windows Vista в папке %SystemRoot%\System32\Config .

Вспомогательные файлы для куста HKEY_CURRENT_USER хранятся в папке %SystemRoot%\Profiles\Имя_пользователя . Расширения имен файлов в этих папках указывают на тип содержащихся в них данных. Отсутствие расширения также иногда может указывать на тип содержащихся в файле данных.

Куст (дерево) реестра (англ. hive) - это группа разделов, подразделов и параметров реестра с набором вспомогательных файлов, содержащих резервные копии этих данных.

Таблица 1 — Соответствие кустов реестра и вспомогательных файлов ¶
Куст реестра Вспомогательные файлы
HKEY_LOCAL_MACHINE\SAM Sam , Sam.log , Sam.sav
HKEY_LOCAL_MACHINE\Security Security , Security.log , Security.sav
HKEY_LOCAL_MACHINE\Software Software , Software.log , Software.sav
HKEY_LOCAL_MACHINE\System System , System.alt , System.log , System.sav
HKEY_CURRENT_CONFIG System , System.alt , System.log , System.sav , Ntuser.dat , Ntuser.dat.log
HKEY_USERS\DEFAULT Default , Default.log , Default.sav

Например, кусту HKEY_LOCAL_MACHINE\Software соответствует на жестком диске файл C:\Windows\System32\config\SOFTWARE .

Чувствительность к регистру определяет, обрабатываются ли прописные (FOO.txt) и строчные буквы (foo.txt) как уникальные (с учетом регистра) или эквивалентные (без учета регистра) в имени файла или каталога.

  • С учетом регистра: FOO.txt ≠ foo.txt ≠ Foo.txt
  • Case-без учета регистра: FOO. Text = foo.txt = Foo.txt

различия между Windows и учетом регистра Linux

при работе с файлами и каталогами Linux и Windows может потребоваться изменить способ обработки чувствительности к регистру.

  • Windows файловая система считает имена файлов и каталогов нечувствительными к регистру. FOO.txt и foo.txt будут считаться эквивалентными файлами.
  • Файловая система Linux обрабатывает имена файлов и каталогов с учетом регистра. FOO.txt и foo.txt будут рассматриваться как отдельные файлы.

Windows файловая система поддерживает настройку чувствительности к регистру с помощью флагов атрибутов на каталог. Хотя стандартное поведение не зависит от регистра, можно назначить флаг атрибута, чтобы сделать каталог чувствительным к регистру, чтобы он мог распознать файлы и папки Linux, которые могут отличаться только регистром.

это может быть особенно справедливо при подключении дисков к файловой системе подсистема Windows для Linux (WSL). При работе в файловой системе WSL вы используете Linux, поэтому файлы и каталоги по умолчанию обрабатываются как регистр.

в прошлом, если у вас есть файлы, имена которых отличаются только регистром, Windows не удалось получить доступ к этим файлам, так как Windows приложения рассматривают файловую систему как нечувствительное к регистру и не могут различить файлы, имена которых отличаются только регистром. хотя в Windows Explorer будут показаны оба файла, будет открыт только один из них, независимо от выбранного.

Изменение чувствительности к регистру файлов и каталогов

ниже описано, как изменить каталог в файловой системе Windows так, чтобы он заменялся с учетом регистра, а также распознать файлы и папки, отличающиеся только регистром.

некоторые Windows приложения с учетом предположения, что файловая система не учитывает регистр, не используйте правильный регистр для ссылки на файлы. Например, приложения не слишком часто преобразовывают имена файлов для использования всех прописных и строчных букв. В каталогах, помеченных с учетом регистра, это означает, что эти приложения больше не имеют доступа к файлам. кроме того, если Windows приложения создают новые каталоги в дереве каталогов, где используются файлы с учетом регистра, то в этих каталогах не учитывается регистр. это может усложнить работу с Windows инструментами в каталогах с учетом регистра, поэтому следует соблюдать осторожность при Windows изменении параметров чувствительности к регистру в файловой системе.

Проверить чувствительность к текущему регистру

чтобы проверить, учитывается ли регистр в каталоге в Windows файловой системе, выполните команду:

Замените на <path> путь к файлу. для каталога в файловой системе Windows (NTFS) <path> будет выглядеть так: C:\Users\user1\case-test или, если вы уже находится в user1 каталоге, можно просто запустить: fsutil.exe file setCaseSensitiveInfo case-test

Изменить чувствительность к регистру

поддержка учета регистра для каждого каталога началась в Windows 10, сборка 17107. в Windows 10 сборка 17692, поддержка была обновлена для включения проверки и изменения флага чувствительности к регистру для каталога из WSL. Чувствительность к регистру предоставляется с помощью расширенного атрибута с именем system.wsl_case_sensitive . Значение этого атрибута будет равно 0 для каталогов без учета регистра и 1 для каталогов с учетом регистра.

Чтобы изменить чувствительность каталога к регистру, необходимо запустить повышенные разрешения (Запуск от имени администратора). Изменение флага учета регистра также требует наличия разрешений "запись атрибутов", "Создание файлов", "Создание папок" и "Удаление вложенных папок и файлов" в каталоге. Дополнительные сведения об этом см. в разделе Устранение неполадок.

чтобы изменить каталог в Windows файловой системе так, чтобы он был чувствителен к регистру (foo ≠ FOO), запустите PowerShell от имени администратора и используйте команду:

чтобы изменить каталог в Windows файловой системы на значение по умолчанию без учета регистра (foo = foo), запустите PowerShell от имени администратора и выполните команду:

Каталог должен быть пустым, чтобы изменить атрибут флага чувствительности к регистру в этом каталоге. Нельзя отключить флаг чувствительности к регистру для каталога, содержащего папки и файлы, имена которых отличаются только регистром.

Наследование чувствительности к регистру

При создании новых каталогов эти каталоги будут наследовать учет регистра от родительского каталога.

При работе в режиме WSL 1 возникает исключение из этой политики наследования. Если распределение выполняется в режиме WSL 1, флаг учета регистра для каталога не наследуется; каталоги, созданные в каталоге с учетом регистра, автоматически не чувствительны к регистру. Необходимо явно пометить каждый каталог как чувствительный к регистру

Варианты чувствительности к регистру для подключения диска в файле конфигурации WSL

чувствительность к регистру можно управлять при подключении диска на подсистема Windows для Linux с помощью файла конфигурации WSL. Каждый установленный дистрибутив Linux может иметь собственный файл конфигурации WSL с именем /etc/wsl.conf . Дополнительные сведения о подключении диска см. в статье Начало работы с диском Linux в WSL 2.

Чтобы настроить параметр учета регистра в wsl.config файле при подключении диска, выполните следующие действия.

  1. Откройте дистрибутив Linux, который вы будете использовать (IE. Ubuntu).
  2. Перейдите в каталог вверх, пока не появится etc Папка (для этого может потребоваться доступ к cd .. home каталогу).
  3. перечислите файлы в etc каталоге, чтобы узнать, wsl.conf существует ли файл (используйте ls команду или explorer.exe . просмотрите каталог с помощью Windows проводника).
  4. Если wsl.conf файл еще не существует, его можно создать с помощью: sudo touch wsl.conf или, выполнив sudo nano /etc/wsl.conf , который создаст файл при сохранении из редактора nano.
  5. Для добавления в файл доступны следующие параметры wsl.config :

Значение по умолчанию: Включение учета регистра для каждого каталога.

Чувствительность к регистру недоступна (все каталоги на подключенных дисках NTFS будут учитываться без учета регистра):

Обрабатывать все каталоги на диске (NTFS) с учетом регистра:

Этот параметр поддерживается только для подключения дисков в дистрибутивах Linux, работающих как WSL 1, и может требовать ключ регистрации. Чтобы добавить ключ регистрации, можно использовать эту команду из командной строки с повышенными привилегиями (администратор): reg.exe add HKLM\SYSTEM\CurrentControlSet\Services\lxss /v DrvFsAllowForceCaseSensitivity /t REG_DWORD /d 1 .

Чтобы эти изменения вступили в силу, необходимо перезапустить WSL после внесения каких либо изменений в wsl.conf файл. Вы можете перезапустить WSL с помощью команды: wsl --shutdown

Чтобы подключить диск (который использует подключаемый модуль файловой системы Дрвфс, чтобы сделать диск доступным в/mnt, например/МНТ/к,/МНТ/д и т. д.) с учетом конкретного параметра чувствительности к регистру для всех дисков, используйте, /etc/wsl.conf как описано выше. Чтобы задать параметры подключения по умолчанию для одного конкретного диска, используйте файл , чтобы указать эти параметры. Дополнительные параметры конфигурации WSL см. в статье Настройка параметров запуска дистрибутив с помощью вслконф.

Изменение чувствительности регистра на диске, подключенном к WSL распределению

Диски в формате NTFS, подключенные к дистрибутиву WSL, по умолчанию не учитывают регистр. Изменение чувствительности регистра для каталога на диске, подключенном к WSL дистрибутиву (IE. Ubuntu), выполните те же действия, которые перечислены выше для Windows файловой системы. (По умолчанию диски EXT4 будут учитываться с учетом регистра).

Чтобы включить чувствительность к регистру в каталоге (FOO ≠ foo), используйте команду:

Чтобы отключить чувствительность к регистру в каталоге и вернуться к регистру без учета регистра по умолчанию (FOO = foo), используйте команду:

При изменении флага с учетом регистра для существующего каталога для подключенного диска во время работы WSL убедитесь, что WSL не содержит ссылок на этот каталог, иначе изменение не вступит в силу. Это означает, что каталог не должен быть открыт какими-либо процессами WSL, включая использование каталога (или его потомков) в качестве текущего рабочего каталога.

Настройка чувствительности к регистру с помощью Git

Система управления версиями Git также имеет параметр конфигурации, который можно использовать для настройки чувствительности к регистру для файлов, с которыми вы работаете. Если вы используете Git, может потребоваться изменить git config core.ignorecase параметр.

Чтобы задать для Git регистр с учетом регистра (FOO.txt ≠ foo.txt), введите:

git config core.ignorecase false

Чтобы задать для Git регистр без учета регистра (FOO.txt = foo.txt), введите:

git config core.ignorecase true

Установка этого параметра в значение false для файловой системы без учета регистра может привести к путанице с ошибками, ложным конфликтам или дублированию файлов.

Диагностика

мой каталог содержит файлы с учетом регистра и требует учета регистра, но Windows средствам FS не будут распознавать эти файлы

чтобы использовать Windows средствах файловой системы для работы с каталогом Linux, который содержит файлы с разными вариантами, необходимо создать новый каталог с учетом регистра, а затем скопировать файлы в этот каталог (с помощью клона git или распаковать). Файлы останутся в смешанном регистре. (Обратите внимание, что если вы уже пробовали переместить файлы в каталог без учета регистра и возникли конфликты, скорее всего, некоторые файлы были перезаписаны и больше не будут доступны.)

Ошибка: Каталог не пуст

Нельзя изменить параметр чувствительности к регистру для каталога, который содержит другие файлы или каталоги. Попробуйте создать новый каталог, изменить параметр, а затем скопировать в него файлы в смешанных регистрах.


Но считать значение бита по его названию можно! Причём значение будет равно его номеру в регистре, считая справа. CS11 равен 1, WGM13 равен 4, ICNC1 равен 7 (см. таблицу выше). Думаю здесь всё понятно: есть регистр (байт), имеющий уникальное имя и состоящий из 8 бит, каждый бит также имеет уникальное имя, по которому можно получить номер этого бита в байте его регистра. Осталось понять, как этим всем пользоваться.

Запись/чтение регистра

Существует несколько способов установки битов в регистрах. Мы рассмотрим их все, чтобы столкнувшись с одним из них вы знали, что это вообще такое и как работает данная строчка кода. Абсолютно вся работа с регистрами заключается в установке нужных битов в нужном байте (в регистре) в состояние 0 или 1. Рекомендую прочитать урок по битовым операциям, в котором максимально подробно разобрано всё, что касается манипуляций с битами. Давайте вернёмся к регистру таймера, который я показывал выше, и попробуем его сконфигурировать. Первый способ, это явное задание всего байта сразу, со всеми единицами и нулями. Сделать это можно так:

И после этого можно пользоваться sbi() и cbi() . Давайте рассмотрим пример, где просто подёргаем TCCR1B разными способами:

Чтение бита Описание
(BYTE >> BIT) & 1 Вручную через сдвиг
bitRead(BYTE, BIT) Ардуиновская макро-функция

Два рассмотренных способа возвращают 0 или 1 в зависимости от состояния бита. Пример:

Ещё больше примеров работы с битами смотри в предыдущем уроке по битовым операциям.

16-бит регистры

Регистры Emacs -- это места, куда вы можете записать текст или позиции для дальнейшего использования. Текст или прямоугольник, однажды записанный в регистр, может быть скопирован в буфер один или несколько раз; позицию, записанную в регистр, можно один или несколько раз использовать для передвижения к ней точки.

Каждый регистр имеет имя, состоящее из одиночного знака. Регистр может хранить кусок текста, позицию, прямоугольник, конфигурацию окна или имя файла, но только что-то одно из перечисленного в каждый конкретный момент. Всякий раз, когда вы сохраняете что-то в регистре, оно остается там до тех пор, пока вы не поместите в этот регистр что-то еще. Чтобы узнать, что содержит регистр r , используйте M-x view-register . M-x view-register RET r Выдать описание того, что содержит регистр r .

Сохранение позиции записывает местоположение в буфере, так что вы можете вернуться туда позже. Перенос в записанную позицию заново выбирает буфер и передвигает точку в это место. C-x r SPC r Записать положение точки в регистр r ( point-to-register ). C-x r j r Перейти в позицию, записанную в регистре r ( jump-to-register ).

Чтобы записать текущее положение точки в регистр, выберите имя r и наберите C-x r SPC r . Регистр r сохраняет записанное таким образом положение до тех пор, пока вы не запишете в этот регистр что-то другое.

Команда C-x j r передвигает точку в позицию, записанную в регистре r . Регистр не затрагивается, он продолжает хранить ту же самую позицию. Вы можете перейти в одну и ту же позицию, используя один и тот же регистр, любое число раз.

Если вы используете C-x r j для перехода к записанной позиции, но буфер, в котором она была записана, уже уничтожен, C-x r j пытается снова создать буфер, обращаясь к тому же файлу. Конечно, это работает только для буферов, которые обращались к файлам.

Если вы захотите вставить копию одного и того же куска текста несколько раз, использование списка уничтожений может оказаться неудобным, так как каждое последующее уничтожение сдвигает кусок текста все дальше вглубь списка. Альтернативой этому методу является сохранение текста в регистре с последующим его восстановлением. C-x r s r Копировать область в регистр r ( copy-to-register ). C-x r i r Вставить текст из регистра r ( insert-register ).

C-x r s r записывает копию текста области в регистр с именем r . Запущенная с числовым аргументом, C-x r s r кроме того удаляет текст из буфера.

C-x r i r вставляет в буфер текст из регистра r . Обычно эта команда оставляет точку перед текстом, а метку располагает после него, но с числовым аргументом ( C-u ), наоборот, точку ставит после текста, а метку перед ним.

Регистр может содержать вместо линейного текста прямоугольник. Прямоугольники представляются в виде списка строк. Смотрите раздел Прямоугольники, для получения основной информации по прямоугольникам и о том, как они определяются в буфере. C-x r r r Копирует область-прямоугольник в регистр r ( copy-region-to-rectangle ). С числовым аргументом еще и удаляет его. C-x r i r Вставляет прямоугольник, который записан в регистре r (если тот содержит прямоугольник) ( insert-register ).

Команда C-x r i r вставляет строку текста, если регистр содержит строку, и вставляет прямоугольник, если регистр содержит прямоугольник.

Смотрите также команду sort-columns , которую можно рассматривать как команду сортировки прямоугольника. Смотрите раздел Сортировка текста.

Вы можете записать в регистр конфигурацию окон в выбранном фрейме или даже конфигурацию всех окон во всех фреймах и позднее восстановить эту конфигурацию. C-x r w r Записать состояние окон выбранного фрейма в регистр r ( window-configuration-to-register ). C-x r f r Записать состояние всех фреймов, включая все их окна, в регистр r ( frame-configuration-to-register ).

Используйте C-x r j r для восстановления конфигурации окон или фреймов. Это та же команда, что используется для восстановления позиции курсора. Когда вы восстанавливаете конфигурацию фреймов, все существующие фреймы, не входящие в эту конфигурацию, становятся невидимыми. Если вы вместо этого хотите удалить эти фреймы, используйте C-u C-x r j r .

Существуют команды для записи числа в регистр, вставки его в буфер в десятичном виде и для увеличения этого числа. Эти команды могут быть полезны в макросах клавиатуры (смотрите раздел Клавиатурные макросы). C-u число C-x r n рег Записать число в регистр рег ( number-to-register ). C-u число C-x r + рег Увеличить число в регистре рег на заданное число ( increment-register ). C-x r g рег Вставить число из регистра рег в буфер.

C-x r g -- это та же команда, что используется для вставки в буфер содержимого регистров другого типа.

Если вы часто обращаетесь к определенным именам файлов, вам будет удобно поместить эти имена в регистры. Вот код на Лиспе, используемый для записи имени файла в регистр:

помещает показанное имя файла в регистр `z' .

Чтобы обратиться к файлу, чье имя находится в регистре r , наберите C-x r j r . (Это та же команда, что используется для перехода к записанной позиции или восстановления конфигурации фреймов.)

Закладки отчасти похожи на регистры тем, что они записывают позиции, к которым вы можете перейти. В отличие от регистров, они имеют длинные имена и сохраняются автоматически от одного сеанса Emacs до другого. Шаблонное применение закладок -- запись места "где вы читали" в различных файлах. C-x r m RET Заложить закладку в текущем файле в позиции точки. C-x r m закладка RET Заложить в точке закладку с именем закладка ( bookmark-set ). C-x r b закладка RET Перейти к закладке с именем закладка ( bookmark-jump ). C-x r l Перечислить все закладки ( list-bookmarks ). M-x bookmark-save Сохранить все текущие значения закладок в файле закладок, используемом по умолчанию.

Как правило закладки используются для записи одной текущей позиции в каждом из нескольких файлов. Таким образом, команда C-x r m , устанавливающая закладку, по умолчанию использует в качестве имени закладки имя файла, к которому вы обращаетесь в данный момент. Если вы называете каждую закладку по имени файла, на который она указывает, то сможете удобно повторно обратиться к любому из этих файлов с помощью C-x r b и в то же время переместиться к позиции закладки.

Чтобы отобразить список всех ваших закладок в отдельном буфере, наберите C-x r l ( list-bookmarks ). Если вы переключитесь в этот буфер, вы сможете отредактировать определения закладок или дать им описания. Наберите в этом буфере C-h m для получения более подробных сведений о специальных командах редактирования в нем.

Когда вы уничтожаете Emacs, он предложит вам сохранить значения закладок в вашем файле закладок по умолчанию, `

/.emacs.bmk' , если вы изменяли какие-либо из этих значений. Вы также можете сохранить закладки в любое время с помощью команды M-x bookmark-save . Команды, работающие с закладками, автоматически загружают ваш файл закладок по умолчанию. Благодаря этим сохранениям и загрузкам закладки переходят от одного сеанса Emacs к другому.

Если вы установите переменную bookmark-save-flag в значение 1, то каждая команда, устанавливающая закладку, также будет записывать ваши закладки; при этом вы не потеряете значения закладок, даже если Emacs останавливается аварийно. (Это значение, если оно является числом, говорит, сколько изменений закладок проходит между сохранениями.)

Значения позиций в закладках сохраняются вместе с окружающим контекстом, так что bookmark-jump может найти правильную позицию, даже если файл был слегка изменен. Переменная bookmark-search-size говорит, сколько знаков контекста по обе стороны от позиции закладки нужно записывать.

Вот несколько дополнительных команд для работы с закладками: M-x bookmark-load RET имя-файла RET Загрузить файл с именем имя-файла , содержащий список значений закладок. Вы можете использовать эту команду, как и команду bookmark-write , для работы с другими файлами закладок помимо вашего файла закладок по умолчанию. M-x bookmark-write RET имя-файла RET Сохранить все текущие значения закладок в файле имя-файла . M-x bookmark-delete RET закладка RET Удалить закладку с именем закладка . M-x bookmark-insert-location RET закладка RET Вставить в буфер имя файла, на который указывает закладка закладка . M-x bookmark-insert RET закладка RET Вставить в буфер содержимое файла, на который указывает закладка закладка .

Читайте также: