mirror of
https://github.com/mirego/accent.git
synced 2024-09-19 06:37:19 +03:00
Fix language tool jar missing in dev warning message
This commit is contained in:
parent
2aa9b82e5a
commit
08849ae462
8
vendor/language_tool/lib/language_tool.ex
vendored
8
vendor/language_tool/lib/language_tool.ex
vendored
@ -19,14 +19,14 @@ defmodule LanguageTool do
|
||||
end
|
||||
)
|
||||
else
|
||||
empty_matches(lang, text)
|
||||
empty_matches(lang, text, :unsupported_language)
|
||||
end
|
||||
catch
|
||||
_ -> empty_matches(lang, text)
|
||||
_ -> empty_matches(lang, text, :check_internal_error)
|
||||
end
|
||||
|
||||
defp empty_matches(lang, text) do
|
||||
%{"error" => nil, "language" => lang, "matches" => [], "text" => text, "markups" => []}
|
||||
defp empty_matches(lang, text, error) do
|
||||
%{"error" => error, "language" => lang, "matches" => [], "text" => text, "markups" => []}
|
||||
end
|
||||
|
||||
def available? do
|
||||
|
@ -4,31 +4,37 @@ defmodule LanguageTool.Backend do
|
||||
require Logger
|
||||
|
||||
def start(config) do
|
||||
path = Application.app_dir(:accent, "priv/native")
|
||||
if File.exists?(jar_file()) do
|
||||
args = [
|
||||
executable(),
|
||||
"-cp",
|
||||
jar_file(),
|
||||
"com.mirego.accent.languagetool.AppKt",
|
||||
"--languages",
|
||||
Enum.join(config.languages, ",")
|
||||
]
|
||||
|
||||
args = [
|
||||
executable(),
|
||||
"-cp",
|
||||
Path.join(path, "language-tool.jar"),
|
||||
"com.mirego.accent.languagetool.AppKt",
|
||||
"--languages",
|
||||
Enum.join(config.languages, ",")
|
||||
]
|
||||
args =
|
||||
if Enum.any?(config.disabled_rule_ids) do
|
||||
args ++ ["--disabledRuleIds", Enum.join(config.disabled_rule_ids, ",")]
|
||||
else
|
||||
args
|
||||
end
|
||||
|
||||
args =
|
||||
if Enum.any?(config.disabled_rule_ids) do
|
||||
args ++ ["--disabledRuleIds", Enum.join(config.disabled_rule_ids, ",")]
|
||||
else
|
||||
args
|
||||
end
|
||||
|
||||
{:ok, backend} = Exile.Process.start_link(args)
|
||||
receive_ready?(backend)
|
||||
backend
|
||||
{:ok, backend} = Exile.Process.start_link(args)
|
||||
receive_ready?(backend)
|
||||
backend
|
||||
else
|
||||
Logger.warning("LanguageTool could not be started. Install JRE and build the jar in #{jar_file()} to enable it")
|
||||
end
|
||||
end
|
||||
|
||||
def available? do
|
||||
!!executable()
|
||||
!!executable() and File.exists?(jar_file())
|
||||
end
|
||||
|
||||
defp jar_file do
|
||||
Path.join(Application.app_dir(:accent, "priv/native"), "language-tool.jar")
|
||||
end
|
||||
|
||||
defp executable do
|
||||
|
13
vendor/language_tool/lib/language_tool/server.ex
vendored
13
vendor/language_tool/lib/language_tool/server.ex
vendored
@ -46,12 +46,17 @@ defmodule LanguageTool.Server do
|
||||
end
|
||||
|
||||
def handle_info(:init_server_process, state) do
|
||||
backend = LanguageTool.Backend.start(state.config)
|
||||
state = %{state | backend: backend}
|
||||
case LanguageTool.Backend.start(state.config) do
|
||||
nil ->
|
||||
:persistent_term.put({:language_tool, :ready}, false)
|
||||
{:noreply, state}
|
||||
|
||||
:persistent_term.put({:language_tool, :ready}, true)
|
||||
backend ->
|
||||
state = %{state | backend: backend}
|
||||
:persistent_term.put({:language_tool, :ready}, true)
|
||||
|
||||
{:noreply, state}
|
||||
{:noreply, state}
|
||||
end
|
||||
end
|
||||
|
||||
def handle_info(_message, state) do
|
||||
|
Loading…
Reference in New Issue
Block a user