CudaText Documentation

repository·master·Indexed 25 days ago

https://github.com/alexey-t/cudatext

CudaText is a lightweight, open-source, cross-platform text editor written in Free Pascal using the Lazarus IDE. This documentation covers the core editor, its Plugin API, and various plugins including the Options Editor, Project Manager (cuda_project_man), Snippets Panel, and Tabs List (cuda_tabs_list).

Tokens
4K
Snippets
9
Records
33
Agent score
84%

What's inside CudaText

  1. Overview of the cuda_tabs_list plugin

    master

    The cuda_tabs_list plugin provides a "Tabs" panel in the CudaText side-panel that displays a list of all currently opened editor tabs.

    Key Features:

    • Grouping: Tabs are visually grouped by editor groups (e.g., "Group 1", "Floating 1").
    • Navigation: Click any tab in the list to focus it in the editor.
    • Reordering: Supports drag-and-drop to reorder tabs, including moving them between different groups.
    • Context Menu: Right-click a tab to access options like closing the tab or copying the file path.
    • Automatic Updates: The list synchronizes automatically when files are opened, closed, or renamed.
  2. Manage projects with the CudaText Project Manager plugin

    master

    The Project Manager plugin allows you to manage collections of files and folders using .cuda-proj files. This plugin adds a 'Project' panel to the CudaText side panel, providing a tree-view interface to navigate and organize your project structure.

    Key features include:

    • Creating and opening project files.
    • Managing root nodes (files and directories).
    • Accessing recent projects.
    • Viewing project properties and configuration.
  3. Use the Sort plugin to manipulate lines

    master

    The Sort plugin provides commands and a dialog box with various sorting and line manipulation options. Available operations include:

    Sorting & Shuffling:

    • Sort lines (via dialog with options)
    • Reverse lines
    • Shuffle lines

    Duplicate & Uniqueness Management:

    • Extract duplicate lines
    • Extract duplicate lines (ignore case)
    • Extract unique lines
    • Remove duplicate lines
    • Remove duplicate lines + origins
    • Remove adjacent duplicate lines

    Blank Line Management:

    • Remove blank lines
    • Remove adjacent blank lines

    Specialized Sorting:

    • INI files: Sort sections + keys, or sort sections without keys.
    • E-mail lists: Sort e-mail list by domain (sorts the entire file as a list of e-mails, first by the domain after @, then by the name before @).
  4. Use the Options Editor Lite plugin

    master

    The Options Editor Lite plugin provides a dialog for configuring CudaText options. It reads available options from default.json and allows you to modify them through a graphical interface.

    Key Features

    • Grouped Sections: Options are organized into sections as defined in default.json.
    • Scope Management: By default, changes are saved to user.json (Scope: User). However, you can select a Lexer scope to apply specific configurations to a particular lexer.
    • Interactive Interface: Options are displayed in a table. Clicking an option reveals its current value and its scope.

    Supported Input Types

    • Boolean options: Uses a checkbox.
    • String/Number options: Uses a text input field.
    • Limited value options: Uses a combobox (dropdown) to select from predefined variants.
    • Font-name options: Uses a combobox listing OS-dependent "default" fonts and installed system fonts.

    Table Customization

    Clicking on the list header opens a menu that allows you to:

    • Choose which columns are visible.
    • Configure column widths.
  5. Use the Options Editor plugin to configure CudaText

    master

    The Options Editor plugin provides a graphical dialog to configure all CudaText options defined in default.json.

    Key Features:

    • Grouped Configuration: Options are organized into sections as defined in default.json.
    • Value Management:
      • Click an option to view its default value.
      • Change the current value using the provided input type.
      • Use the Reset button to revert an option to its default value.
    • Input Types:
      • Boolean: Displayed as a checkbox.
      • String/Number: Displayed as an input field.
      • Limited Values: Displayed as a combobox (dropdown).
      • Font Names: Displayed as a combobox containing OS-dependent 'default' fonts and system fonts.
    • Storage Scopes:
      • By default, changes are saved to user.json.
      • Enabling the "For Lexer" checkbox allows you to save configuration specifically for the current lexer.
  6. Manage projects with the cuda_project_man plugin

    master

    The cuda_project_man plugin allows you to manage collections of files and directories as "projects" using .cuda-proj files. Once installed, a "Project" panel is available in the CudaText side panel.

    Project Management via Context Menu

    Project file operations:

    • New project: Create a new project file.
    • Open project...: Open an existing project.
    • Recent projects: Access a list of recently opened projects.
    • Save project as...: Save the current project with a new name.

    Root node operations (managing the project structure):

    • Add folder...: Add a directory to the project root.
    • Add file...: Add a file to the project root.
    • Clear project: Remove all nodes from the project.
    • Remove node: Removes a node at the top project level. Note that if a node is selected, the selection is ignored and the top-level node is removed.

    Other operations:

    • Refresh: Update the project view.
    • Go to file...: Quickly navigate to a file within the project.
    • Project properties: View/edit project metadata.
    • Config...: Access plugin configuration.
  7. Configure the Sort plugin to sort all text without selection

    master

    By default, the plugin may require a selection. To allow the plugin to handle all text in the document when no text is selected, you must modify the plugin configuration.

    1. Open the plugin configuration via Options / Settings-plugins / Sort / Config.
    2. Add or update the allow_sort_all_when_none_selected option in the plugins.ini file under the [sort] section.

    Set the value to 1 to enable this behavior.

    [sort]
    allow_sort_all_when_none_selected=1
  8. Access CudaText plugin documentation via Wiki

    master

    For detailed information regarding CudaText add-ons and plugins, refer to the official Free Pascal Wiki links provided below. These resources contain the necessary documentation for understanding and managing the plugin ecosystem.

    https://wiki.freepascal.org/CudaText#Add-ons
    https://wiki.freepascal.org/CudaText_plugins