Что такое регистр файла
Реестр Windows (англ. Windows Registry), или системный реестр — иерархически построенная база данных параметров и настроек в большинстве операционных систем семейства Microsoft Windows [2].
В реестре хранятся данные, которые необходимы для правильного функционирования Windows. К ним относятся профили всех пользователей, сведения об установленном программном обеспечении и типах документов, которые могут быть созданы каждой программой, информация о свойствах папок и значках приложений, а также установленном оборудовании и используемых портах [1].
Открытие реестра¶
Поскольку файлов в реестре несколько, его нельзя открыть, например, в текстовом редакторе и внести какие-либо коррективы. Для работы с ним требуется специальная программа – редактор реестра, который является встроенным компонентом операционной системы Windows и вызывается путем ввода команды Regedit [4].
Существует несколько способов открыть редактор реестра.
Способ №1 – Открытие через утилиту «Выполнить»:
- Выбрать Пуск → Выполнить, либо нажать сочетание клавиш Win+R ( Win — клавиша, между Ctrl и Alt в нижнем ряду клавиатуры, обычно на ней изображен значок Microsoft Windows ;
- В открывшимся окне ввести команду regedit ;
- Нажать клавишу ОК .
Рис. 1 – Открытие через утилиту «Выполнить»
Способ №2 – Открытие через поиск по меню «Пуск»:
- Открыть меню Пуск;
- Ввести в строке поиска regedit и запустить найденный файл, который отобразится в верхней части Пуска.
Рис. 2 – Открытие через поиск по меню «Пуск»
С другими способами можно ознакомиться в статье Три способа открыть редактор реестра Windows.
Структура реестра¶
Реестр имеет иерархическую структуру, которая напоминает файловую систему жесткого диска – с его каталогами, подкаталогами и файлами. Но называются элементы реестра по-другому: верхний уровень иерархии составляют разделы, каждый из которых может содержать вложенные подразделы, а также параметры. Именно в параметрах хранится основное содержимое реестра, разделы служат лишь для группировки схожих по назначению параметров [4].
Рис. 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) - это группа разделов, подразделов и параметров реестра с набором вспомогательных файлов, содержащих резервные копии этих данных.
Куст реестра | Вспомогательные файлы |
---|---|
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 файле при подключении диска, выполните следующие действия.
- Откройте дистрибутив Linux, который вы будете использовать (IE. Ubuntu).
- Перейдите в каталог вверх, пока не появится etc Папка (для этого может потребоваться доступ к cd .. home каталогу).
- перечислите файлы в etc каталоге, чтобы узнать, wsl.conf существует ли файл (используйте ls команду или explorer.exe . просмотрите каталог с помощью Windows проводника).
- Если wsl.conf файл еще не существует, его можно создать с помощью: sudo touch wsl.conf или, выполнив sudo nano /etc/wsl.conf , который создаст файл при сохранении из редактора nano.
- Для добавления в файл доступны следующие параметры 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 Вставить в буфер содержимое файла, на который указывает закладка закладка .
Читайте также: