Module: Narou
- Defined in:
- lib/web/settingmessages.rb,
lib/input.rb,
lib/narou.rb,
lib/logger.rb,
lib/narou/api.rb,
lib/web/pushserver.rb,
lib/web/streaminginput.rb
Overview
Copyright 2013 whiteleaf. All rights reserved.
Defined Under Namespace
Modules: Eventable, Input, LoggerModule, ServerHelpers
Classes: API, AppServer, Logger, LoggerError, PushServer, StreamingLogger, Worker
Constant Summary
collapse
- LOCAL_SETTING_DIR =
".narou"
- GLOBAL_SETTING_DIR =
".narousetting"
- AOZORAEPUB3_JAR_NAME =
"AozoraEpub3.jar"
- AOZORAEPUB3_DIR =
"./AozoraEpub3"
- PRESET_DIR =
"./preset"
- EXIT_ERROR_CODE =
127
- SETTING_VARIABLES_WEBUI_MESSAGES =
WEB UI > 環境設定画面で表示する各項目の説明ここになければ元々の説明が表示される
{
"device" => "変換、送信対象の端末(" + Device::DEVICES.keys.join(", ") + ")",
"difftool" => "Diffで使うツールのパスを指定する\n※WEB UIでは使われません"
}
- @@root_dir =
nil
- @@local_setting_dir =
nil
- @@global_setting_dir =
nil
- @@aozora_jar_path =
nil
- @@preset_dir =
nil
- @@is_web =
false
Class Method Summary
collapse
Class Method Details
.alias_to_id(target) ⇒ Object
81
82
83
84
85
86
87
|
# File 'lib/narou.rb', line 81
def alias_to_id(target)
aliases = Inventory.load("alias", :local)
if aliases[target]
return aliases[target]
end
target
end
|
.already_init? ⇒ Boolean
70
71
72
|
# File 'lib/narou.rb', line 70
def already_init?
!!get_root_dir
end
|
.aozoraepub3_directory?(path) ⇒ Boolean
104
105
106
|
# File 'lib/narou.rb', line 104
def aozoraepub3_directory?(path)
File.exist?(create_aozoraepub3_jar_path(path))
end
|
.create_aozoraepub3_jar_path(*paths) ⇒ Object
100
101
102
|
# File 'lib/narou.rb', line 100
def create_aozoraepub3_jar_path(*paths)
File.expand_path(File.join(*paths, AOZORAEPUB3_JAR_NAME))
end
|
.create_novel_filename(novel_data, ext = "") ⇒ Object
135
136
137
138
139
140
|
# File 'lib/narou.rb', line 135
def create_novel_filename(novel_data, ext = "")
author, title = %w(author title).map { |k|
Helper.replace_filename_special_chars(novel_data[k], true)
}
"[#{author}] #{title}#{ext}"
end
|
.get_aozoraepub3_path ⇒ Object
AozoraEpub3 の実行ファイル(.jar)のフルパス取得検索順序
-
グローバルセッティング (global_setting aozoraepub3dir)
-
小説保存ディレクトリ(Narou.get_root_dir) 直下の AozoraEpub3
-
スクリプト保存ディレクトリ(Narou.get_script_dir) 直下の AozoraEpub3
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
|
# File 'lib/narou.rb', line 115
def get_aozoraepub3_path
return @@aozora_jar_path if @@aozora_jar_path
global_setting_aozora_path = Inventory.load("global_setting", :global)["aozoraepub3dir"]
if global_setting_aozora_path
aozora_jar_path = create_aozoraepub3_jar_path(global_setting_aozora_path)
if File.exist?(aozora_jar_path)
@@aozora_jar_path = aozora_jar_path
return aozora_jar_path
end
end
[Narou.get_root_dir, Narou.get_script_dir].each do |dir|
aozora_jar_path = create_aozoraepub3_jar_path(dir, AOZORAEPUB3_DIR)
if File.exist?(aozora_jar_path)
@@aozora_jar_path = aozora_jar_path
return aozora_jar_path
end
end
nil
end
|
.get_device(device_name = nil) ⇒ Object
155
156
157
158
159
160
161
|
# File 'lib/narou.rb', line 155
def get_device(device_name = nil)
device_name = Inventory.load("local_setting", :local)["device"] unless device_name
if device_name && Device.exists?(device_name)
return Device.create(device_name)
end
nil
end
|
.get_ebook_file_path(target, ext) ⇒ Object
.get_global_setting_dir ⇒ Object
57
58
59
60
61
62
63
64
|
# File 'lib/narou.rb', line 57
def get_global_setting_dir
return @@global_setting_dir if @@global_setting_dir
@@global_setting_dir = File.expand_path(File.join("~", GLOBAL_SETTING_DIR))
unless File.exist?(@@global_setting_dir)
FileUtils.mkdir(@@global_setting_dir)
end
@@global_setting_dir
end
|
.get_local_setting_dir ⇒ Object
48
49
50
51
52
53
54
55
|
# File 'lib/narou.rb', line 48
def get_local_setting_dir
return @@local_setting_dir if @@local_setting_dir
root_dir = get_root_dir
if root_dir
@@local_setting_dir = File.join(root_dir, LOCAL_SETTING_DIR)
end
@@local_setting_dir
end
|
.get_mobi_path(target) ⇒ Object
142
143
144
|
# File 'lib/narou.rb', line 142
def get_mobi_path(target)
get_ebook_file_path(target, ".mobi")
end
|
.get_preset_dir ⇒ Object
94
95
96
97
98
|
# File 'lib/narou.rb', line 94
def get_preset_dir
return @@preset_dir if @@preset_dir
@@preset_dir = File.expand_path(File.join(get_script_dir, PRESET_DIR))
@@preset_dir
end
|
.get_root_dir ⇒ Object
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
# File 'lib/narou.rb', line 30
def get_root_dir
return @@root_dir if @@root_dir
path = File.expand_path(File.dirname("."))
drive_letter = ""
if Helper.os_windows?
path.gsub!(/^[a-z]:/i, "")
drive_letter = $&
end
while path != ""
if File.directory?("#{drive_letter}#{path}/#{LOCAL_SETTING_DIR}")
@@root_dir = drive_letter + path
break
end
path.gsub!(%r!/[^/]*$!, "")
end
@@root_dir
end
|
.get_script_dir ⇒ Object
66
67
68
|
# File 'lib/narou.rb', line 66
def get_script_dir
@@script_dir ||= File.expand_path(File.join(File.dirname(__FILE__), ".."))
end
|
.novel_frozen?(target) ⇒ Boolean
.web=(bool) ⇒ Object
163
164
165
|
# File 'lib/narou.rb', line 163
def web=(bool)
@@is_web = bool
end
|
.web? ⇒ Boolean
167
168
169
|
# File 'lib/narou.rb', line 167
def web?
@@is_web
end
|