Меню

Lite XL

Это минималистичный редактор, но сделан на графическом движке и поэтому выглядит красиво. Поверх графического движка используются скрипты Lua, поэтому редактор может практически все что угодно, если вы умеете программировать :).

Достоинства:

Недостатки:

Устанавливается командой:

pkg install lite-xl

При запуске редактора, пока не открыт ни один файл, в центре окна будет подсказка по комбинациям клавиш. Но даже и она не обязательна. В левом нижнем углу есть базовые кнопки и кнопка с иконкой книжки, через нее можно получить доступ ко всем командам редактора. Напротив каждой команды указаны комбинации клавиш которые вы со временем запомните.

Достаточно щелкнуть на шестеренке в левом нижнем углу и откроются настройки с выпадающими списками и полями ввода, но такой вид можно отключить, чтобы добавить свой код.

В конец файла ~/.config/lite-xl/init.lua добавляем свои настройки:

-- Не игнорировать никакие файлы
config.ignore_files = {}

-- Отступы пробелами
config.tab_type = "soft"
-- Отступы 4 пробела
config.indent_size = 4

-- Автодополнение после ввода двух символов
config.plugins.autocomplete.min_len = 2

-- Шрифт помельче
style.code_font = renderer.font.load(DATADIR .. "/fonts/JetBrainsMono-Regular.ttf", 14 * SCALE)
-- Для FreeBSD
style.code_font = renderer.font.load("/usr/local/share/fonts/hack-font/Hack-Regular.ttf", 13 * SCALE)

-- Отключить графический плагин настроек
config.plugins.settings = false

-- Отключить оригинальную md-подсветку
config.plugins.language_md = false

-- Дублировать строку в которой стоит курсор с помощью Ctrl+D
keymap.add { ["ctrl+d"] = "doc:duplicate-lines" }

-- Перечитать файл
keymap.add { ["f5"] = "doc:reload" }

-- Закрыть редактор
keymap.add { ["ctrl+q"] = "core:quit" }

-- Широкий скролл
config.force_scrollbar_status = "expanded"

-- 20 табов до прокрутки
config.max_tabs = 20

-- замедлить мерцание курсора
config.blink_period = 1.5

-- Перемещение строк
keymap.add {
  ["alt+up"] = "doc:move-lines-up",
  ["alt+down"] = "doc:move-lines-down",
}

-- Двойным кликом открывать файлы
local TreeView = require "plugins.treeview"
local command = require "core.command"
command.add(function()
  return core.active_view == TreeView, core.active_view
end, {
  ["custom-treeview:select-file-or-open-dir"] = function(view)
    if view.hovered_item and view.hovered_item.type == "dir" then
      command.perform("treeview:select-and-open")
    else
      command.perform("treeview:select")
    end
  end
})
keymap.add({
  ["2lclick"] = "treeview:select-and-open",
  ["1lclick"] = "custom-treeview:select-file-or-open-dir"
})

-- Не рисовать стрелочки рядом с папками
local TreeView = require "plugins.treeview"
function TreeView:draw_item_chevron()
  return style.padding.x
end

-- Фикс цветов
style.selection = { 255, 128, 255, 50 }

Чтобы установить дополнительные плагины нужно создать папку ~/.config/lite-xl/plugins и закидывать файлы плагинов туда. Скачать плагины можно отсюда https://github.com/lite-xl/lite-xl-plugins. Ниже приведены пропатченые плагины.

autoinsert.lua - вставка парных скобок и кавычек. Закомментирована строка вставки парной тильды.

bracketmatch.lua - переход к парной скобке по Ctrl+m. Оригинальный.

fix_md.lua - подсветка md-файлов. Убрана подсветка от * поскольку они часто встречаются в коде и ломают дальнейшую подсветку.

markers.lua - установка маркеров Ctrl+b и переход к ним по Ctrl+up и Ctrl+down. Изменены комбинации клавиш и добавлен переход к предыдущему маркеру.

minimap.lua - миникарта файла справа. Оригинальный.

selectionhighlight.lua - подсветка все вхождений выделенного. Сделана заливка вместо рамки.

Комментировать