|
173 | 173 | (defun chatu-get-output-ext (line)
|
174 | 174 | "Get chatu output file extension from string LINE."
|
175 | 175 | (when (string-match
|
176 |
| - ":output-ext +\"\\(.+?\\)\"" line) |
| 176 | + ":output-ext +\"\\(.+?\\)[ \\t\\n]" line) |
177 | 177 | (list :output-ext
|
178 | 178 | (substring-no-properties
|
179 | 179 | (match-string 1 line)))))
|
|
234 | 234 | (if input-dir
|
235 | 235 | (concat input-dir "/" input)
|
236 | 236 | input)))
|
237 |
| - (output-ext (plist-get keyword-plist :output-ext)) |
| 237 | + (output-ext (or (plist-get keyword-plist :output-ext) |
| 238 | + "svg")) |
| 239 | + (_ (plist-put keyword-plist :output-ext output-ext)) |
238 | 240 | (output (plist-get keyword-plist :output))
|
239 | 241 | (output-dir (or (plist-get keyword-plist :output-dir)
|
240 | 242 | ;; if output already contains parent folder
|
|
248 | 250 | (concat (file-name-sans-extension
|
249 | 251 | ;; remove input's parent folder
|
250 | 252 | (file-name-base input))
|
251 |
| - "-" page "." (or output-ext "svg")) |
| 253 | + "-" page "." output-ext) |
252 | 254 | (file-name-with-extension
|
253 | 255 | (file-name-base input)
|
254 |
| - ;; when output-ext is set, use it. |
255 |
| - (or output-ext "svg"))))) |
| 256 | + output-ext)))) |
256 | 257 | (_ (plist-put keyword-plist :output-path
|
257 | 258 | (if output-dir
|
258 | 259 | (concat output-dir "/" output)
|
|
338 | 339 | (result (plist-get keyword-plist :output-path))
|
339 | 340 | (result-dir (file-name-directory result))
|
340 | 341 | (space-count (string-search
|
341 |
| - "#" |
| 342 | + (cond ((derived-mode-p 'markdown-mode) |
| 343 | + "<" |
| 344 | + ) |
| 345 | + ((derived-mode-p 'org-mode) |
| 346 | + "#")) |
342 | 347 | (buffer-substring
|
343 | 348 | (line-beginning-position)
|
344 | 349 | (line-end-position)))))
|
345 |
| - ;; ensure output-dir exists. |
| 350 | + ;; ensure output-dir exists. |
346 | 351 | (when (not (file-exists-p result-dir))
|
347 | 352 | (make-directory result-dir t))
|
348 | 353 | (forward-line)
|
|
0 commit comments