From 3ccfb9410771ac0e210109c992359887e65ba6a7 Mon Sep 17 00:00:00 2001 From: Francesco Abbate Date: Wed, 19 May 2021 11:35:25 +0200 Subject: [PATCH] Fix a few things --- data/core/init.lua | 2 +- data/core/keymap.lua | 2 +- data/core/project.lua | 18 ++++++++++-------- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/data/core/init.lua b/data/core/init.lua index f91f4dac..4116422d 100644 --- a/data/core/init.lua +++ b/data/core/init.lua @@ -536,7 +536,7 @@ function core.init() end) end - if #core.docs == 0 then + if #core.project_entries == 0 then local ws = core.try(project.load_workspace, USERDIR .. PATHSEP .. "workspace.lua") if not ws then core.log("Empty project: use the \"Core: Open File\" command to open a file or a directory.") diff --git a/data/core/keymap.lua b/data/core/keymap.lua index 84bcd770..b7f1a14b 100644 --- a/data/core/keymap.lua +++ b/data/core/keymap.lua @@ -105,7 +105,7 @@ keymap.add_direct { ["ctrl+p"] = "core:find-file", ["ctrl+o"] = "core:open-file", ["ctrl+n"] = "core:new-doc", - ["ctrl+shift+c"] = "core:change-project-folder", + ["ctrl+shift+c"] = "project:open-directory", ["ctrl+shift+o"] = "core:open-project-folder", ["alt+return"] = "core:toggle-fullscreen", diff --git a/data/core/project.lua b/data/core/project.lua index 72e5e755..d6a25944 100644 --- a/data/core/project.lua +++ b/data/core/project.lua @@ -139,6 +139,14 @@ function project.load(name) end +function project.save(name) + name = name or core.project_name + local filename = common.path_join(USERDIR, "projects", name .. ".lua") + save_workspace(filename) + core.log("Saved project %s.", core.project_name) +end + + function project.load_workspace(filename) local load = loadfile(filename) local workspace = load and load() @@ -177,9 +185,7 @@ command.add(nil, { core.command_view:enter("Save Project As", function(text) -- FIXME: add sanity check of project name. core.project_name = text - local filename = common.path_join(USERDIR, "projects", text .. ".lua") - save_workspace(filename) - core.log("Saved project %s.", core.project_name) + project.save() end) end, @@ -189,10 +195,7 @@ command.add(nil, { core.project_name = text end) end - local filename = common.path_join(USERDIR, "projects", core.project_name .. ".lua") - save_workspace(filename) - core.set_recent_project(core.project_name) - core.log("Saved project %s.", core.project_name) + project.save() end, ["project:load"] = function() @@ -205,7 +208,6 @@ command.add(nil, { ["project:open-directory"] = function() core.command_view:enter("Open Directory", function(text, item) text = system.absolute_path(common.home_expand(item and item.text or text)) - if text == core.working_dir then return end local path_stat = system.get_file_info(text) if not path_stat or path_stat.type ~= 'dir' then core.error("Cannot open folder %q", text)