github focus-editor/focus 0.3.6
Focus 0.3.6

latest releases: 0.3.8, 0.3.7
12 months ago
  • New features:
    • New option: status_bar_position. Allows changing the position of the status bar to either the top or bottom of the editor window. Defaults to bottom.
    • Code colors have been revamped. There are now more colors available in the config, which roughly correspond to the code tokens produced by language tokenizers.
      • Configs and themes will be migrated to version [5] with the new colors automatically derived from the old colors
      • You can always check the default config for the full list of available colors (use the Show Default Config command)
      • Do note that not all tokens are present in all languages. For example, code_enum_variant only works with Jai, Odin and Zig at the moment.
      • A new color preview widget will be automatically displayed to help with color selection (code samples contributed by Numina)
        • The color preview widget now has a color picker (thanks to @onelivesleft)
      • New option color_preview_popup was added to control the popup behaviour. Variants: enabled, minimized, disabled (defaults to enabled)
    • New commands: close_all_editors and close_other_editors. Can be used to clean up the most recent files dialog (Ctrl-Tab by default). (thanks @maxamundsen)
    • New command: strip_trailing_whitespace. Use to strip trailing whitespace in the currently open file (thanks @maxamundsen)
    • New command: choose_language. Allows to select a language for a buffer (thanks @maxamundsen)
    • New command: build_clear_output. Use to manually clear the build output panel. Note that there is already a build option to clear it on every run, which may be preferable.
    • New config subsection under [[workspace]]: [file associations]. Can be used to assign syntax to buffers using wildcards. See the default config for examples
    • Basic highlighting for Markdown (thanks @JakWolf) - however it's not complete and not always correct
    • Basic CSS highlighting (thanks @simonvallz)
    • C and C++ highlighters are now separate from each other
    • Workspace changes:
      • Workspace will now reload in a non-destructive way. Whenever possible it will try to preserve open editors unless they don't belong to the workspace any more
      • The [[workspace]] section in the config has changed. It should auto-migrate to version [5]. Please refer to the comments in the default config for more details
        • Allow/ignore sections now expect one line per rule, not many rules on one line separated by space
      • Individual files can now be added to workspace alongside directories
      • The first directory in the workspace member list will be considered the working directory
      • Paths relative to the config file location can now be used in the workspace member list
    • Any projects opened using any means (e.g. by launching the editor with a -project parameter or passing in a dir with a .focus-config file) will be remembered, and you can can then switch to them using the Switch to Project dialog (Ctrl-Alt-P by default)
    • New build command variable: %PROJECT_CONFIG_DIR%. Expands to the path of the directory containing the active project config.
    • New option: load_most_recent_project_on_start. Set to true to load the last loaded project on startup.
    • New option: highlight_matching_brackets. Set to true to highlight the bracket matching the one the cursor is on.
    • New command: jump_to_matching_bracket. Defaults to Ctrl-M.
  • Bug fixes:
    • Linux: Fixed a bug that caused inconsistent trackpad scrolling on Wayland (thanks @Mythique)
    • Rust: enabled comment toggling that was missing initially
    • Fixed a few memory leaks
    • Fixed an out-of-bounds scroll position in scrollable panels in some cases
    • Fixed a crash when parsing build output with certain regexes
    • Fixed a crash when outputting invalid UTF-8 in the build output window
    • Fixed a glitch with changing scroll position in some cases (thanks @Sanian-Creations)
    • Fixed search result highlighting when there are tab characters used for alignment in the middle of text
    • linux/macos: invalid directories in the config should now highlight the incorrect chunk, not the whole path (on windows it has always worked like this)
    • UPD. 0.3.6.1 Fixed a crash when trying to pick a color and spamming cursor movement keys at the same time
  • Other changes:
    • macOS: add support for dead keys/key composition
    • Text inputs now also support deleting text to underscore (Alt+Backspace, Alt+Delete by default) (thanks @jejikeh)
    • It is now possible to add a comment to an empty line by using the toggle_comment action (thanks @polgartom)

Don't miss a new focus release

NewReleases is sending notifications on new releases.