A modern Music Player Daemon based on Rockbox open source high quality audio player
libadwaita audio rust zig deno mpris rockbox mpd
at master 354 lines 16 kB view raw
1\subsection{Text Viewer} 2\screenshot{plugins/images/ss-text_viewer-main}{Text Viewer}{img:text_viewer-main} 3This is a Viewer for text files with word wrap. Just open a \fname{.txt} or 4\fname{.nfo} file to display it. The text viewer features controls to handle 5various styles of text formatting and has top{}-of{}-file and bottom{}-of{}-file 6buttons. You can view files without a \fname{.txt} or \fname{.nfo} extension 7by using \emph{Open with} from the \emph{Context Menu} 8(see \reference{ref:Contextmenu}). You can also bookmark pages. 9 10\subsubsection{Default keys} 11\begin{btnmap} 12 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD% 13 ,SANSA_E200_PAD,SANSA_FUZE_PAD,GIGABEAT_PAD,MROBE100_PAD,SANSA_FUZEPLUS_PAD% 14 ,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD,RG_NANO_PAD}{\ButtonUp} 15 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollBack} 16 \opt{IRIVER_H10_PAD,MPIO_HD300_PAD}{\ButtonScrollUp} 17 \opt{SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonVolUp} 18 \opt{GIGABEAT_S_PAD}{\ButtonPrev} 19 \opt{COWON_D2_PAD}{\ButtonMinus{} / }% 20 \opt{touchscreen}{\TouchTopMiddle} 21 \opt{PBELL_VIBE500_PAD}{\ButtonOK} 22 \opt{MPIO_HD200_PAD}{\ButtonRew} 23 \opt{HAVEREMOTEKEYMAP}{& 24 \opt{IAUDIO_M3_PAD}{\ButtonRCUp} 25 } 26 & Scroll{}-up\\ 27 28 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,IAUDIO_X5_PAD% 29 ,SANSA_E200_PAD,SANSA_FUZE_PAD,GIGABEAT_PAD,MROBE100_PAD,SANSA_FUZEPLUS_PAD% 30 ,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD,RG_NANO_PAD}{\ButtonDown} 31 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonScrollFwd} 32 \opt{IRIVER_H10_PAD,MPIO_HD300_PAD}{\ButtonScrollDown} 33 \opt{SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonVolDown} 34 \opt{GIGABEAT_S_PAD}{\ButtonNext} 35 \opt{COWON_D2_PAD}{\ButtonPlus{} / }% 36 \opt{touchscreen}{\TouchBottomMiddle} 37 \opt{PBELL_VIBE500_PAD}{\ButtonCancel} 38 \opt{MPIO_HD200_PAD}{\ButtonFF} 39 \opt{HAVEREMOTEKEYMAP}{& 40 \opt{IAUDIO_M3_PAD}{\ButtonRCDown} 41 } 42 & Scroll{}-down\\ 43 44 \opt{GIGABEAT_S_PAD}{\ButtonPlay+\ButtonLeft} 45 \opt{MPIO_HD200_PAD}{\ButtonVolDown} 46 \opt{MPIO_HD300_PAD}{\ButtonRew} 47 \opt{touchscreen}{\TouchMidLeft} 48 \nopt{GIGABEAT_S_PAD,touchscreen,IAUDIO_M3_PAD,MPIO_HD200_PAD% 49 ,MPIO_HD300_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonLeft} 50 \opt{HAVEREMOTEKEYMAP}{& 51 \opt{IAUDIO_M3_PAD}{\ButtonRCLeft} 52 } 53 & Top of file (Narrow mode) / 54 One screen left (Wide mode)\\ 55 56 \opt{GIGABEAT_S_PAD}{\ButtonPlay+\ButtonRight} 57 \opt{MPIO_HD200_PAD}{\ButtonVolUp} 58 \opt{MPIO_HD300_PAD}{\ButtonFF} 59 \opt{touchscreen}{\TouchMidRight} 60 \nopt{GIGABEAT_S_PAD,touchscreen,IAUDIO_M3_PAD,MPIO_HD200_PAD% 61 ,MPIO_HD300_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRight} 62 \opt{HAVEREMOTEKEYMAP}{& 63 \opt{IAUDIO_M3_PAD}{\ButtonRCRight} 64 } 65 & Bottom of file (Narrow mode) / 66 One screen right (Wide mode)\\ 67 68 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD% 69 ,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_S_PAD% 70 ,GIGABEAT_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD% 71 ,SAMSUNG_YH820_PAD,RG_NANO_PAD}{% 72 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn+\ButtonUp} 73 \opt{SANSA_E200_PAD,SANSA_FUZE_PAD}{\ButtonScrollBack} 74 \opt{SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_S_PAD,PBELL_VIBE500_PAD}{\ButtonUp} 75 \opt{GIGABEAT_PAD}{\ButtonA+\ButtonUp} 76 \opt{SANSA_FUZEPLUS_PAD}{\ButtonVolUp} 77 \opt{SAMSUNG_YH92X_PAD}{\ButtonFF+\ButtonUp} 78 \opt{SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonUp} 79 \opt{HAVEREMOTEKEYMAP}{& } 80 \opt{RG_NANO_PAD}{\ButtonR} 81 & One line up\\ 82 } 83 84 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,SANSA_E200_PAD% 85 ,SANSA_FUZE_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_S_PAD% 86 ,GIGABEAT_PAD,PBELL_VIBE500_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD% 87 ,SAMSUNG_YH820_PAD,RG_NANO_PAD}{% 88 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn+\ButtonDown} 89 \opt{SANSA_E200_PAD,SANSA_FUZE_PAD}{\ButtonScrollFwd} 90 \opt{SANSA_C200_PAD,SANSA_CLIP_PAD,GIGABEAT_S_PAD,PBELL_VIBE500_PAD}{\ButtonDown} 91 \opt{GIGABEAT_PAD}{\ButtonA+\ButtonDown} 92 \opt{SANSA_FUZEPLUS_PAD}{\ButtonVolDown} 93 \opt{SAMSUNG_YH92X_PAD}{\ButtonFF+\ButtonDown} 94 \opt{SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonDown} 95 \opt{HAVEREMOTEKEYMAP}{& } 96 \opt{RG_NANO_PAD}{\ButtonL} 97 & One line down\\ 98 } 99 100 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,GIGABEAT_PAD,% 101 GIGABEAT_S_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{ 102 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn+\ButtonLeft} 103 \opt{GIGABEAT_S_PAD}{\ButtonLeft} 104 \opt{GIGABEAT_PAD}{\ButtonA+\ButtonLeft} 105 \opt{SANSA_FUZEPLUS_PAD}{\ButtonBottomLeft} 106 \opt{SAMSUNG_YH92X_PAD}{\ButtonFF+\ButtonLeft} 107 \opt{SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonLeft} 108 \opt{HAVEREMOTEKEYMAP}{& } 109 & One column left\\ 110 } 111 112 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD,GIGABEAT_PAD,% 113 GIGABEAT_S_PAD,SANSA_FUZEPLUS_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{ 114 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn+\ButtonRight} 115 \opt{GIGABEAT_S_PAD}{\ButtonRight} 116 \opt{GIGABEAT_PAD}{\ButtonA+\ButtonRight} 117 \opt{SANSA_FUZEPLUS_PAD}{\ButtonBottomRight} 118 \opt{SAMSUNG_YH92X_PAD}{\ButtonFF+\ButtonRight} 119 \opt{SAMSUNG_YH820_PAD}{\ButtonRec+\ButtonRight} 120 \opt{HAVEREMOTEKEYMAP}{& } 121 & One column right\\ 122 } 123 124 \opt{IPOD_4G_PAD,IPOD_3G_PAD,IAUDIO_X5_PAD% 125 ,IRIVER_H10_PAD,GIGABEAT_S_PAD,PBELL_VIBE500_PAD% 126 ,MPIO_HD200_PAD,MPIO_HD300_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPlay} 127 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonSelect} 128 \opt{GIGABEAT_PAD}{\ButtonA} 129 \opt{SANSA_C200_PAD,SANSA_E200_PAD}{\ButtonRec} 130 \opt{SANSA_CLIP_PAD}{\ButtonHome} 131 \opt{SANSA_FUZE_PAD}{\ButtonDown+\ButtonSelect} 132 \opt{MROBE100_PAD}{\ButtonDisplay} 133 \opt{SAMSUNG_YH820_PAD}{\ButtonFF} 134 \opt{SAMSUNG_YH92X_PAD}{\ButtonRecOn{} or \ButtonRecOff} 135 \opt{MPIO_HD200_PAD}{FIXME} 136 \opt{touchscreen}{\TouchCenter} 137 \opt{HAVEREMOTEKEYMAP}{& 138 \opt{IAUDIO_M3_PAD}{\ButtonRCMode} 139 } 140 \opt{RG_NANO_PAD}{\ButtonX} 141 & Toggle autoscroll\\ 142 143 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn+\ButtonSelect} 144 \opt{IPOD_4G_PAD,IPOD_3G_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD}{\ButtonSelect} 145 \opt{IRIVER_H10_PAD}{\ButtonFF} 146 \opt{IAUDIO_X5_PAD}{\ButtonRec} 147 \opt{SANSA_FUZEPLUS_PAD}{Long \ButtonSelect} 148 \opt{SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonDown+\ButtonSelect} 149 \opt{COWON_D2_PAD}{\ButtonMenu+\ButtonPlus} 150 \opt{SANSA_FUZE_PAD}{\ButtonUp+\ButtonSelect} 151 \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonPlay} 152 \opt{PBELL_VIBE500_PAD}{\ButtonPower} 153 \opt{MPIO_HD200_PAD}{\ButtonRec} 154 \opt{MPIO_HD300_PAD}{\ButtonEnter} 155 \opt{HAVEREMOTEKEYMAP}{& 156 \opt{IAUDIO_M3_PAD}{\ButtonRCPlay+\ButtonRCMode} 157 } 158 \opt{RG_NANO_PAD}{\ButtonA} 159 & Set/Reset bookmarks\\ 160 161 \opt{IPOD_4G_PAD,IPOD_3G_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD% 162 ,MROBE100_PAD,PBELL_VIBE500_PAD,MPIO_HD300_PAD}{\ButtonMenu} 163 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonMode} 164 \opt{IAUDIO_X5_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD,SANSA_E200_PAD}{\ButtonSelect} 165 \opt{SANSA_FUZE_PAD}{Long \ButtonSelect} 166 \opt{SANSA_FUZEPLUS_PAD}{\ButtonBack} 167 \opt{IRIVER_H10_PAD,SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{\ButtonRew} 168 \opt{COWON_D2_PAD}{\ButtonMenu{} / }% 169 \opt{MPIO_HD200_PAD}{\ButtonFunc} 170 \opt{touchscreen}{\TouchTopRight} 171 \opt{HAVEREMOTEKEYMAP}{& 172 \opt{IAUDIO_M3_PAD}{\ButtonRCPlay} 173 } 174 \opt{RG_NANO_PAD}{\ButtonB} 175 & Enter menu\\ 176 177 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOff} 178 \opt{IPOD_4G_PAD,IPOD_3G_PAD}{\ButtonSelect+\ButtonMenu} 179 \opt{IAUDIO_X5_PAD,IRIVER_H10_PAD,SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD% 180 ,GIGABEAT_PAD,MROBE100_PAD,SANSA_FUZEPLUS_PAD}{\ButtonPower} 181 \opt{SANSA_FUZE_PAD}{Long \ButtonHome} 182 \opt{GIGABEAT_S_PAD}{\ButtonBack} 183 \opt{COWON_D2_PAD}{\ButtonPower{} / }% 184 \opt{touchscreen}{\TouchTopLeft} 185 \opt{IAUDIO_M3_PAD,PBELL_VIBE500_PAD}{\ButtonRec} 186 \opt{SAMSUNG_YH92X_PAD,SAMSUNG_YH820_PAD}{Long \ButtonRew} 187 \opt{MPIO_HD200_PAD}{\ButtonRec + \ButtonPlay} 188 \opt{MPIO_HD300_PAD}{Long \ButtonMenu} 189 \opt{HAVEREMOTEKEYMAP}{& 190 \opt{IAUDIO_M3_PAD}{\ButtonRCRec} 191 \opt{IRIVER_RC_H100_PAD}{\ButtonRCStop} 192 } 193 \opt{RG_NANO_PAD}{\ButtonStart} 194 & Exit text viewer\\ 195 196\end{btnmap} 197 198\subsubsection{Menu} 199 200\begin{description} 201\item[Return] Return to the file being viewed. 202\item[Viewer Options] Change settings for the current file. 203 \begin{description} 204 \item[Encoding] Set the codepage in the text viewer. 205 Available settings: 206 \setting{ISO-8859-1} (Latin 1), 207 \setting{ISO-8859-7} (Greek), 208 \setting{ISO-8859-8} (Hebrew), 209 \setting{CP1251} (Cyrillic), 210 \setting{ISO-8859-11} (Thai), 211 \setting{CP1256} (Arabic), 212 \setting{ISO-8859-9} (Turkish), 213 \setting{ISO-8859-2} (Latin Extended), 214 \setting{CP1250} (Central European), 215 \setting{SJIS} (Japanese), 216 \setting{GB-2312} (Simple Chinese), 217 \setting{KSX-1001} (Korean), 218 \setting{BIG5} (Traditional Chinese), 219 \setting{UTF-8} (Unicode), 220 This setting only applies to the plugin and is independent from the 221 \setting{Default Codepage} setting (see \reference{ref:Displayoptions}). 222 \item[Word Wrap] Toggle word wrap mode. 223 \begin{description} 224 \item[On] Break lines at the maximum column limit. 225 \item[Off (Chop Words)] Break lines at white space or hyphen. 226 \end{description} 227 \item[Line Mode] Change how lines are displayed. 228 \begin{description} 229 \item[Normal] Break lines at newline characters. 230 \item[Join] Join lines together. 231 \item[Expand] Add a blank line at newlines. Useful for making paragraphs 232 clearer in some book style text files. 233 \item[Reflow Lines] Justify the text. 234 \end{description} 235 \item[Screens Per Page] Set the number of screens per page. Available 236 options are \setting{1} to \setting{5} screens per page. 237 \item[Alignment] Set the text alignment. 238 \begin{description} 239 \item[Right] Set the text alignment to the right. 240 (Useful for displaying right-to-left languages, such as Arabic or Hebrew) 241 \item[Left] Set the text alignment to the left. 242 \end{description} 243 \item[Show Header] Select whether to show the header. The header displays the file path. 244 \begin{description} 245 \item[No] Do not display the header. 246 \item[Yes] Display the header. 247 \end{description} 248 \item[Show Footer] Select whether to show the footer. The footer dispays the page number. 249 \begin{description} 250 \item[No] Do not display the footer. 251 \item[Yes] Display the footer. 252 \end{description} 253 254 \item[Font] Select the font to be used by the Text Viewer. 255 \item[Show Statusbar] Select whether to show the status bar. If you select 256 a theme settings that the status bar does not display (see 257 \reference{ref:configure_rockbox_themes}), the status bar is not 258 displayed even if you select \setting{Yes}. 259 \begin{description} 260 \item[No] Do not display the status bar. 261 \item[Yes] Display the status bar. 262 \end{description} 263 \item[Scroll Settings] The scrolling settings submenu. 264 \begin{description} 265 \item[Horizontal] Submenu for horizontal scrolling settings. 266 \begin{description} 267 \item[Scrollbar] Toggle the horizontal scrollbar for the 268 current mode. If the file fits on one screen, there is no 269 scrollbar and this setting has no effect. 270 \begin{description} 271 \item[No] Do not display the horizontal scroll bar. 272 \item[Yes] Display the horizontal scroll bar. 273 \end{description} 274 \item[Scroll Mode] Change the function of the ``Left'' and 275 ``Right'' buttons. 276 \begin{description} 277 \item[Scroll by Screen] Move to the previous/next 278 screen. 279 \item[Scroll by Column] Move to the previous/next 280 column. 281 \end{description} 282 \end{description} 283 \item[Vertical] Submenu for vertical scrolling settings. 284 \begin{description} 285 \item[Scrollbar] Toggle the vertical scrollbar for the 286 current mode. If the file fits on one screen, there is no 287 scrollbar and this setting has no effect. 288 \begin{description} 289 \item[No] Do not display the vertical scroll bar. 290 \item[Yes] Display the vertical scroll bar. 291 \end{description} 292 \item[Scroll Mode] Change the function of the ``Scroll-up'' 293 and ``Scroll-down'' buttons. 294 \begin{description} 295 \item[Scroll by Page] Scroll up or down one full screen. 296 \item[Scroll by Line] Scroll up or down one line. 297 \end{description} 298 \item[Overlap Pages] Set whether the last line from the 299 previous screen is retained when scrolling pages. 300 \begin{description} 301 \item[No] Do not retain previous line. 302 \item[Yes] Retain previous line. 303 \end{description} 304 \item[Auto-scroll Speed] Control the speed of auto-scrolling 305 in number of lines per second. Available options are 306 \setting{1} to \setting{10} lines per second. As an example, 307 \setting{4} will scroll the text at four lines per second. 308 \item[Left/Right Key (Narrow mode)] Change the function of 309 the ``Left'' and ``Right'' buttons when the screen is in 310 narrow mode (i.e. one screen per page). 311 \begin{description} 312 \item[Previous/Next Page] Scroll up or down one full screen. 313 \item[Top/Bottom Page] Move to the top or bottom page. 314 \end{description} 315 \end{description} 316 \end{description} 317 \item[Indent Spaces] Set the number of spaces to indent the text when line 318 mode is set to \setting{Reflow Lines}. Available options are \setting{0} 319 to \setting{5} spaces. If you select \setting{0}, a blank line is 320 displayed as an indent. 321 \end{description} 322 323\item[Show Playback Menu] Display the playback menu to allow control of the 324currently playing music without leaving the plugin. 325 326\item[Select Bookmark] Select a saved bookmark. In the screenshot below, the 327``*'' denotes the current page. 328 329\screenshot{plugins/images/ss-text_viewer-sel_bk_menu}{The select bookmark menu}{img:text_viewer-sel_bk} 330 331\item[Global Settings] Set the default settings for the text viewer. 332The setting items are the same as \setting{Viewer Options}. The global 333settings are stored in 334\fname{.rockbox/rocks/viewers/viewer.dat}. 335 336\item[Quit] Exits the plugin. The text viewer automatically 337stores its settings, the current position and bookmarks in 338\fname{.rockbox/rocks/viewers/viewer\_file.dat}. 339\end{description} 340 341\subsubsection{Bookmarks} 342 To add a bookmark, press 343 \opt{IRIVER_H100_PAD,IRIVER_H300_PAD}{\ButtonOn+\ButtonSelect}% 344 \opt{IPOD_4G_PAD,IPOD_3G_PAD,GIGABEAT_PAD,GIGABEAT_S_PAD,MROBE100_PAD}{\ButtonSelect}% 345 \opt{IRIVER_H10_PAD}{\ButtonFF}\opt{IAUDIO_X5_PAD}{\ButtonRec}% 346 \opt{SANSA_E200_PAD,SANSA_C200_PAD,SANSA_CLIP_PAD}{\ButtonDown+\ButtonSelect}% 347 \opt{COWON_D2_PAD}{\ButtonMenu+\ButtonPlus}% 348 \opt{SANSA_FUZE_PAD}{\ButtonUp+\ButtonSelect}% 349 \opt{IAUDIO_M3_PAD}{\ButtonRCPlay+\ButtonRCMode}. 350 \opt{MPIO_HD200_PAD}{FIXME} 351 The bookmark will be displayed as shown below. To delete the bookmark 352 press the same button again. 353 354\screenshot{plugins/images/ss-text_viewer-bookmark}{A bookmark}{img:text_viewer-bookmark}