mirror of
https://git.sr.ht/~cismonx/bookmarkfs
synced 2025-06-07 19:58:50 +00:00
doc: add doc for fsck handlers
This commit is contained in:
parent
3de5006ae5
commit
f6fcd489f2
1 changed files with 90 additions and 0 deletions
|
@ -1155,10 +1155,100 @@ Chromium does not have such concepts.
|
||||||
@node Filesystem-Check Handlers
|
@node Filesystem-Check Handlers
|
||||||
@chapter Filesystem-Check Handlers
|
@chapter Filesystem-Check Handlers
|
||||||
|
|
||||||
|
The filesystem-check handler is responsible for instructing the
|
||||||
|
@command{fsck.bookmarkfs} program on what to do with each invalid
|
||||||
|
bookmark name.
|
||||||
|
|
||||||
|
Like backends, filesystem-check handlers are typically built into
|
||||||
|
shared libraries, and are installed as:
|
||||||
|
|
||||||
|
@example
|
||||||
|
@var{$@{pkglibdir@}}/fsck-handler-@var{$@{name@}}@var{$@{shlib_suffix@}}
|
||||||
|
@end example
|
||||||
|
|
||||||
|
Where @var{$@{name@}} is the name passed to the @option{-o handler=@var{name}}
|
||||||
|
option of @command{fsck.bookmarkfs}, and @var{$@{shlib_suffix@}} is the
|
||||||
|
common filename extension for shared library files on the current platform
|
||||||
|
(e.g. @file{.so} on GNU/Linux and FreeBSD).
|
||||||
|
|
||||||
|
|
||||||
@node Built-in Filesystem-Check Handler
|
@node Built-in Filesystem-Check Handler
|
||||||
@section Built-in Handler
|
@section Built-in Handler
|
||||||
|
|
||||||
|
The built-in handler is shipped with the @command{fsck.bookmarkfs} program.
|
||||||
|
It has minimal functionalities, but is capable enough to handle most
|
||||||
|
common fsck scenarios.
|
||||||
|
|
||||||
|
Handler-specific options:
|
||||||
|
|
||||||
|
@table @option
|
||||||
|
@item prompt=@var{str}
|
||||||
|
Readline prompt string.
|
||||||
|
Defaults to ``@t{% }''.
|
||||||
|
|
||||||
|
This option is ignored in non-interactive mode.
|
||||||
|
|
||||||
|
@item translit=@var{char}
|
||||||
|
Transliterate bad characters into @var{char}.
|
||||||
|
Defaults to ``@t{_}''.
|
||||||
|
@end table
|
||||||
|
|
||||||
|
For each bookmark entry, the built-in handler prints a message
|
||||||
|
to standard output explaining why the bookmark name is invalid.
|
||||||
|
|
||||||
|
When the @option{-o repair} option is given, the handler renames the bookmark
|
||||||
|
according to the following rules:
|
||||||
|
|
||||||
|
@table @code
|
||||||
|
@item BOOKMARKFS_FSCK_RESULT_NAME_DUPLICATE
|
||||||
|
Append a ``@t{_@var{$@{counter@}}}'' suffix to the name, where
|
||||||
|
@var{$@{counter@}} is a self-incrementing 32-bit integer in decimal format.
|
||||||
|
|
||||||
|
If appending the suffix would exceed max name length, truncate the name first.
|
||||||
|
|
||||||
|
@item BOOKMARKFS_FSCK_RESULT_NAME_BADCHAR
|
||||||
|
Transliterate the bad character into another character.
|
||||||
|
|
||||||
|
@item BOOKMARKFS_FSCK_RESULT_NAME_BADLEN
|
||||||
|
If the name is too long, truncate it to @code{NAME_MAX} bytes.
|
||||||
|
|
||||||
|
If the name is empty, see below:
|
||||||
|
|
||||||
|
@item BOOKMARKFS_FSCK_RESULT_NAME_DOTDOT
|
||||||
|
@item BOOKMARKFS_FSCK_RESULT_NAME_INVALID
|
||||||
|
Rename to ``@t{fsck-@var{$@{id@}}}'', where @var{$@{id@}} is the bookmark ID
|
||||||
|
in decimal format.
|
||||||
|
@end table
|
||||||
|
|
||||||
|
In interactive mode, the handler prompts the user before applying the rename.
|
||||||
|
The user may issue a command to indicate what to do with each entry:
|
||||||
|
|
||||||
|
@table @command
|
||||||
|
@item p
|
||||||
|
Print the ID and new name of current entry.
|
||||||
|
@item a[-]
|
||||||
|
Apply the proposed rename for the current entry.
|
||||||
|
@item e[-] @var{new_name}
|
||||||
|
Change the proposed rename to @var{new_name} and then apply.
|
||||||
|
@item c
|
||||||
|
Continue to the next entry.
|
||||||
|
@item s[-]
|
||||||
|
Skip current directory.
|
||||||
|
@item S[-]
|
||||||
|
Skip current directory and all subdirectories.
|
||||||
|
@item r[-]
|
||||||
|
Rewind current directory.
|
||||||
|
@item R[-]
|
||||||
|
Rewind all.
|
||||||
|
@item w[-]
|
||||||
|
Save applied changes.
|
||||||
|
@item q
|
||||||
|
Save applied changes and quit.
|
||||||
|
@end table
|
||||||
|
|
||||||
|
The optional ``@t{-}'' suffix inhibits the default behavior of continuing
|
||||||
|
to the next entry, after the command completes successfully.
|
||||||
|
|
||||||
|
|
||||||
@node Tcl-Based Filesystem-Check Handler
|
@node Tcl-Based Filesystem-Check Handler
|
||||||
@section Tcl-Based Handler
|
@section Tcl-Based Handler
|
||||||
|
|
Loading…
Add table
Reference in a new issue